Script UC4 - Rackcdn.com

Transcription

Script UC4 - Rackcdn.com
Automation Engine
Script UC4
Version: 9.9.0
2
3
Chapter
Date: 2014/06
Automic Software GmbH
iv Copyright
Copyright
La marque Automic® et le logo 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 de
la société Automic. 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
v
Table des matières
1 Introduction
1
1.1 A propos des scripts UC4
1
1.2 Premières étapes
2
1.2.1 Introduction
2
1.2.2 Check-lists préalables
2
1.2.3 Premier script
3
1.2.4 Instructions de script
4
1.2.5 Variables de script
5
1.2.6 Fonctions de Script
6
1.2.7 Utilisation de JCL
6
1.2.8 Boîtes de dialogue définies par l'utilisateur
8
1.2.9 Conditions IF
9
1.2.10 Boucles dans le Script
1.3 Principes de base
10
13
1.3.1 Elaboration des Scripts
13
1.3.2 Structures de contrôle
14
1.3.3 Variable de Script
14
1.3.4 Littéral de script
18
1.3.5 Onglets de script
19
1.3.6 Editeur de scripts
20
1.3.7 Aide au démarrage
23
1.4 Thèmes prolongés
24
1.4.1 Utilisation des éléments de Script
24
1.4.2 Traitement des erreurs
24
1.4.3 Utilisation d'objets Variable
25
1.4.4 Changement d'attributs d'objet
25
1.4.5 Codes retour des fonctions
26
1.4.6 Calcul
26
1.4.7 Chaînes de caractères
28
1.4.8 Formats de date, d'heure et de période
29
1.4.9 Envoi d'Alertes
31
1.4.10 Traitement du Script
32
vi
Contents
1.5 Eléments de script plus pris en charge
32
2 Scripts - Liste alphabétique
34
3 Organisation fonctionnelle
44
3.1 Scripts - Organisation fonctionnelle
3.1.1 Statuts et utilisation du système
3.2 Modification d'objets
44
51
55
3.2.1 :REGISTER_OUTPUTFILE
55
3.2.2 CREATE_OBJECT
56
3.2.3 EXPORT
60
3.2.4 IMPORT
61
3.2.5 MODIFY_OBJECT
63
3.2.6 MOVE_OBJECT
68
3.2.7 REMOVE_OBJECT
69
3.3 Activation d'objets
70
3.3.1 :BEGINREAD... :ENDREAD
70
3.3.2 :PRINT
72
3.3.3 :PUT_READ_BUFFER, :PUT_PROMPT_BUFFER
74
3.3.4 :READ
75
3.3.5 ACTIVATE_UC_OBJECT
81
3.3.6 AUTOFORECAST
85
3.3.7 CANCEL_UC_OBJECT
86
3.3.8 FORECAST_OBJECT
87
3.3.9 FORECAST_TASK
89
3.3.10 RESTART_UC_OBJECT
91
3.3.11 SYS_STATE_ACTIVE
93
3.3.12 SYS_ACTIVE_COUNT
94
3.3.13 SYS_STATE_JOB_ACTIVE
96
3.3.14 SYS_STATE_JOBS_IN_GROUP
97
3.3.15 SYS_STATE_JP_ACTIVE
98
3.3.16 TOGGLE_OBJECT_STATUS
3.4 Lecture ou modification d'objets
100
101
3.4.1 :ADD_ATT
101
3.4.2 :ADD_COMMENT
102
3.4.3 :ATTACH_SYNC
103
Automation Engine
vii
3.4.4 :DELETE_VAR
105
3.4.5 :MODIFY_STATE
106
3.4.6 :PUT_ATT
108
3.4.7 :PUT_ATT_APPEND
110
3.4.8 :PUT_VAR
112
3.4.9 :PUT_VAR_COL
114
3.4.10 :REMOVE_ATT
115
3.4.11 :REPLACE_STRUCTURE
117
3.4.12 :SET_CALE
118
3.4.13 :SET_CONDITION
119
3.4.14 :XML_CLOSE
121
3.4.15 GET_ATT
121
3.4.16 GET_ATT_PLAIN
123
3.4.17 GET_ATT_SUBSTR
124
3.4.18 GET_CONDITION
125
3.4.19 GET_OBJECT_TYPE
127
3.4.20 GET_OH_IDNR
128
3.4.21 GET_STATISTIC_DETAIL
129
3.4.22 GET_SYNC
132
3.4.23 GET_VAR
133
3.4.24 MODIFY_TASK
135
3.4.25 MODIFY_UC_OBJECT
158
3.4.26 SET_SYNC
162
3.4.27 XML_BEAUTIFY
163
3.4.28 XML_GET_ATTRIBUTE
165
3.4.29 XML_GET_CHILD_COUNT
166
3.4.30 XML_GET_FIRST_CHILD
167
3.4.31 XML_GET_LAST_CHILD
169
3.4.32 XML_GET_NEXTSIBLING
170
3.4.33 XML_GET_NODE_NAME
172
3.4.34 XML_GET_NODE_TEXT
173
3.4.35 XML_OPEN
175
3.4.36 XML_PRINTINTOFILE
177
3.4.37 XML_SELECT_NODE
178
viii
Contents
3.5 Elaboration et traitement des Scripts
180
3.5.1 :DATA
180
3.5.2 :DEFINE
181
3.5.3 :EXT_REPORT_OFF
183
3.5.4 :EXT_REPORT_ON
184
3.5.5 :FILL
184
3.5.6 :GENERATE
186
3.5.7 :IF... :ELSE... :ENDIF
188
3.5.8 :INCLUDE
190
3.5.9 :INC_SCRIPT
191
3.5.10 :JCL_CONCAT_CHAR
192
3.5.11 :JCL_SUBSTITUTE
194
3.5.12 :PSET
195
3.5.13 :RESTART
197
3.5.14 :RSET
198
3.5.15 :SET
200
3.5.16 :SET_SCRIPT_VAR
201
3.5.17 :WAIT
203
3.5.18 :WHILE... :ENDWHILE
204
3.5.19 FIND
206
3.5.20 GET_SCRIPT_VAR
207
3.5.21 LENGTH
209
3.6 Traitement des erreurs et messages
210
3.6.1 :EXIT
210
3.6.2 :ON_ERROR
211
3.6.3 :SEND_MSG
212
3.6.4 :SEND_SNMP_TRAP
214
3.6.5 :SET_LAST_ERR
216
3.6.6 :STOP
217
3.6.7 GET_MSG_TXT
219
3.6.8 GET_MSG_TYPE
220
3.6.9 SEND_MAIL
221
3.6.10 SYS_LAST_ERR_INS
223
3.6.11 SYS_LAST_ERR_NR
224
Automation Engine
3.6.12 SYS_LAST_ERR_SYSTXT
3.7 Données d'activation
ix
225
226
3.7.1 GET_PARENT_NAME
226
3.7.2 GET_PARENT_NR
227
3.7.3 GET_PARENT_TYPE
228
3.7.4 GET_UC_OBJECT_STATUS
229
3.7.5 GET_UC_OBJECT_NR
231
3.7.6 SYS_ACT_HOST
232
3.7.7 SYS_ACT_JP
233
3.7.8 SYS_ACT_ME_NAME
234
3.7.9 SYS_ACT_ME_NR
234
3.7.10 SYS_ACT_ME_TYPE
235
3.7.11 SYS_ACT_PARENT_NAME
236
3.7.12 SYS_ACT_PARENT_NR
237
3.7.13 SYS_ACT_PARENT_TYPE
239
3.7.14 SYS_ACT_PREV_NAME
240
3.7.15 SYS_ACT_PREV_NR
241
3.7.16 SYS_ACT_PTTYP
242
3.7.17 SYS_ACT_RESTART
242
3.7.18 SYS_ACT_RESTART_COUNT
243
3.7.19 SYS_ACT_RESTART_ME_NR
244
3.7.20 SYS_ACT_TOP_NAME
245
3.7.21 SYS_ACT_TOP_NR
246
3.7.22 SYS_ACT_USERID
246
3.7.23 SYS_LAST_RESTART_POINT
247
3.7.24 SYS_LAST_RESTART_TEXT
248
3.7.25 SYS_RESTART_POINT
249
3.8 Données Utilisateur
250
3.8.1 IS_GROUP_MEMBER
250
3.8.2 SYS_ACT_CLIENT, SYS_USER_CLIENT
251
3.8.3 SYS_ACT_CLIENT_TEXT
252
3.8.4 SYS_USER_ALIVE
252
3.8.5 SYS_USER_DEP
254
3.8.6 SYS_USER_LNAME
255
x
Contents
3.8.7 SYS_USER_NAME
3.9 Séquences de données
255
256
3.9.1 :CLOSE_PROCESS
256
3.9.2 :PROCESS... :TERM_PROCESS... :ENDPROCESS
257
3.9.3 GET_PROCESS_LINE
259
3.9.4 PREP_PROCESS
263
3.9.5 PREP_PROCESS_AGENTGROUP
267
3.9.6 PREP_PROCESS_COMMENTS
269
3.9.7 PREP_PROCESS_FILE
272
3.9.8 PREP_PROCESS_FILENAME
276
3.9.9 PREP_PROCESS_REPORT
280
3.9.10 PREP_PROCESS_REPORTLIST
284
3.9.11 PREP_PROCESS_VAR
288
3.10 Traitement d'Evènement
291
3.10.1 GET_CONSOLE, GET_EVENT_INFO
291
3.10.2 GET_FILESYSTEM
301
3.10.3 GET_WIN_EVENT
306
Exemples
3.11 Statuts et utilisation du système
307
307
3.11.1 :DISCONNECT
307
3.11.2 :SET_UC_SETTING
309
3.11.3 :SHUTDOWN
311
3.11.4 :TERMINATE
312
3.11.5 CHANGE_LOGGING
313
3.11.6 GET_UC_SERVER_NAME
314
3.11.7 GET_UC_SETTING
315
3.11.8 GET_UC_SYSTEM_NAME
317
3.11.9 ILM
318
Syntaxe
321
3.11.10 MODIFY_SYSTEM
322
3.11.11 SYS_BUSY_01
325
3.11.12 SYS_BUSY_10
326
3.11.13 SYS_BUSY_60
327
3.11.14 SYS_HOST_ALIVE
328
Automation Engine
xi
3.11.15 SYS_INFO
330
3.11.16 SYS_SERVER_ALIVE
332
3.11.17 SYS_SNMP_ACTIVE
333
3.11.18 SYS_USER_LANGUAGE
334
3.11.19 TOGGLE_SYSTEM_STATUS
335
3.12 Date et heure
336
3.12.1 ADD_DAYS
336
3.12.2 ADD_PERIOD
338
3.12.3 ADD_TIME
339
3.12.4 ADD_TIMESTAMP
340
3.12.5 CALE_LOOK_AHEAD
341
3.12.6 CONV_DATE
343
3.12.7 CONV_TIMESTAMP
344
3.12.8 DAY_OF_YEAR
345
3.12.9 DIFF_DATE
346
3.12.10 DIFF_TIME
348
3.12.11 FIRST_OF_PERIOD
349
3.12.12 LAST_OF_PERIOD
351
3.12.13 SUB_DAYS
352
3.12.14 SUB_PERIOD
354
3.12.15 SUB_TIME
355
3.12.16 SUB_TIMESTAMP
357
3.12.17 SYS_DATE
358
3.12.18 SYS_DATE_PHYSICAL
359
3.12.19 SYS_LDATE
361
3.12.20 SYS_TIME
362
3.12.21 SYS_TIME_PHYSICAL
363
3.12.22 SYS_TIMESTAMP_PHYSICAL
365
3.12.23 VALID_CALE
366
3.12.24 VALID_DATE
367
3.12.25 VALID_TIME
368
3.12.26 WEEK_NR
369
3.12.27 WEEKDAY_NR
370
3.12.28 WEEKDAY_XX
371
xii
Contents
3.12.29 YEAR_9999
3.13 Calcul
372
372
3.13.1 ADD
372
3.13.2 DIV
374
3.13.3 GET_BIT
376
3.13.4 MOD
377
3.13.5 MULT
378
3.13.6 RANDOM
379
3.13.7 SUB
381
3.14 Chaînes
382
3.14.1 ALPHA2RUNNR
382
3.14.2 CONVERT
383
3.14.3 FORMAT
385
3.14.4 HEX
386
3.14.5 ISNUMERIC
387
3.14.6 RUNNR2ALPHA
388
3.14.7 STR_CAT
389
3.14.8 STR_CUT, MID, SUBSTR
390
3.14.9 STR_FIND
391
3.14.10 STR_FIND_REVERSE
392
3.14.11 STR_LC, CONV_LC
393
3.14.12 STR_LENGTH, STR_LNG
394
3.14.13 STR_LTRIM
395
3.14.14 STR_MATCH
396
3.14.15 STR_REVERSE
397
3.14.16 STR_RTRIM
398
3.14.17 STR_SUBSTITUTE
398
3.14.18 STR_SUBSTITUTE_VAR, STR_SUB_VAR
400
3.14.19 STR_TRIM
401
3.14.20 STR_UC, CONV_UC
402
3.14.21 UC_CRLF
403
4 JCL UC4 pour les applications
404
4.1 Généralités sur le JCL UC4 pour les applications
404
4.2 Oracle Applications
404
Automation Engine
xiii
4.2.1 Généralités sur le JCL Oracle Applications
404
4.2.2 OA_ADD_LAYOUT
405
4.2.3 OA_ADD_NOTIFICATION
406
4.2.4 OA_ADD_PRINTER
406
4.2.5 OA_SET_PRINT_DEFAULTS
407
4.2.6 OA_SUBMIT_REQUEST
408
4.3 PeopleSoft
409
4.3.1 Généralités sur le JCL PeopleSoft
409
4.3.2 PS_GET_HEARTBEAT
410
4.3.3 PS_GRANT_OUTPUT_ACCESS
411
4.3.4 PS_MODIFY_RUNCONTROL
412
4.3.5 PS_RUN_JOB
414
4.3.6 PS_RUN_PROCESS
415
4.3.7 PS_SET_BINDVAR
417
4.4 SAP
418
4.4.1 SAP Basis
418
Généralités sur le JCL SAP
418
R3_ACTIVATE_CM_PROFILE
419
Syntaxe
419
Remarques
419
Exemple
419
R3_ACTIVATE_EXT_COMMAND
420
Syntaxe
420
Exemple
421
R3_ACTIVATE_EXT_PROGRAM
421
Syntaxe
421
Exemple
422
R3_ACTIVATE_INTERCEPTED_JOBS
422
Syntaxe
422
Remarques
425
Exemple
425
R3_ACTIVATE_JOBS
425
Syntaxe
426
Exemple
429
xiv
Contents
Syntaxe
429
Exemple
433
R3_ACTIVATE_REPORT
Syntaxe
433
434
439
Syntaxe
439
Remarques
445
Exemple
445
R3_ACTIVATE_SESSIONS
446
Syntaxe
446
Description
448
Exemples
448
R3_CALL_TRANSACTION
449
Syntaxe
449
Remarques
449
Exemple
450
R3_COPY_VARIANT
450
Syntaxe
450
Exemple
451
R3_CREATE_OUTPUT_REQUEST
452
Syntaxe
452
Exemple
453
R3_CREATE_VARIANT
453
Syntaxe
453
Remarques
454
Exemple
454
R3_DEACTIVATE_CM_PROFILE
454
Syntaxe
454
Remarques
455
Exemple
455
R3_DELETE_NODE
455
Syntaxe
455
Remarques
456
Exemple
456
Automation Engine
R3_DELETE_VARIANT
xv
456
Syntaxe
456
Exemple
457
R3_GET_APPLICATIONLOG
457
Syntaxe
457
Remarques
458
Exemple
458
R3_GET_APPLICATIONLOG
458
Syntaxe
458
Remarques
460
R3_GET_EVENT
461
Syntaxe
461
Remarques
461
Exemple
462
R3_GET_INTERCEPTION
462
Syntaxe
462
Remarques
462
Exemple
463
R3_GET_JOB_SPOOL
463
Syntaxe
463
Remarques
465
Exemple
466
R3_GET_JOBLOG
466
Syntaxe
466
Remarques
467
Exemple
467
R3_GET_JOBS
467
Syntaxe
468
Description
470
Exemples
471
R3_GET_MONITOR
471
Syntaxe
471
Remarques
472
R3_GET_SESSIONS
472
xvi
Contents
Syntaxe
473
Description
474
Exemples
474
R3_GET_SPOOLREQUESTS
475
Syntaxe
475
Description
477
Exemple
477
R3_GET_SYSTEMLOG
477
Syntaxe
477
Remarques
478
Exemple
479
R3_GET_VARIANTS
479
Syntaxe
479
Exemple
480
R3_GET_VARIANT_CONTENTS
480
Syntaxe
480
Exemples
481
R3_MODIFY_INTERCEPTION
481
Syntaxe
482
Remarques
482
Exemple
482
R3_MODIFY_JOB
483
Syntaxe
483
Description
485
Exemple
485
R3_MODIFY_VARIANT
485
Syntaxe (paramètres)
485
Syntaxe (options de sélection)
486
Remarques
488
Exemple (paramètres)
488
Exemples (options de sélection)
488
R3_RAISE_EVENT
489
Syntaxe
489
Remarques
489
Automation Engine
Exemple
R3_SCHEDULE_JOB_CANCEL
xvii
490
490
Syntaxe
490
Description
490
Exemple
490
R3_SEND_SPOOL_REQUEST
491
Syntaxe
491
Remarques
493
Exemple
494
R3_SET_BDCDATA
494
Syntaxe
494
Remarques
494
Exemple
495
R3_SET_FREE_SELECTION
495
Syntaxe
495
Remarques
496
Exemple
496
R3_SET_LOG_ATTR
497
Syntaxe
497
Remarques
498
Exemple
499
R3_SET_PERF_ATTR
499
Syntaxe
499
Remarques
500
Exemple
501
R3_SET_PRINT_DEFAULTS
501
Syntaxe
501
Remarques
506
Exemple
506
R3_SET_SELECT_OPTION
506
Syntaxe
506
Remarques
507
Exemple
507
R3_SET_STATUS_ATTR
508
xviii
Contents
Syntaxe
508
Remarques
509
Exemple
510
R3_SET_TEXT_ATTR
510
Syntaxe
510
Remarques
510
Exemple
511
R3_SWITCH_OPMODE
511
Syntaxe
511
Exemple
512
4.4.2 SAP BCA
512
BCA_ACTIVATE_PROCESS
512
Syntaxe
512
Remarques
513
4.4.3 SAP BW
Généralités sur le JCL SAP BW
Elément de script
BW_ACTIVATE_CHAIN
513
513
513
514
Syntaxe
514
Description
517
Exemple
517
BW_ACTIVATE_INFOPACKAGES
517
Syntaxe
517
Remarques
518
Exemples
519
BW_GET_CHAINS
519
Syntaxe
519
Remarques
520
Exemple
520
BW_GET_INFOPACKAGES
520
Syntaxe
520
Remarques
520
Exemple
521
BW_RESTART_CHAIN
521
Automation Engine
xix
Syntaxe
521
Description
523
Exemple
523
BW_SET_INFOPACKAGE_SELECTION
524
Syntaxe
524
Remarques
525
Exemple
525
4.4.4 SAP XI
XI_GET_CHANNEL
526
526
Syntaxe
526
Remarques
527
Exemple
527
XI_SET_CHANNEL
528
Syntaxe
528
Remarques
529
Exemple
530
4.5 Siebel
4.5.1 SI_START_TASK
5 JCL de UC4 pour JMX
530
530
531
5.1 Généralités sur le JCL JMX
531
5.2 JMX_COMPOSITE_ADD
532
5.3 JMX_CREATE_MBEAN
533
5.4 JMX_GET_AGENT
534
5.5 JMX_GET_ATTRIBUTE
534
5.6 JMX_GET_INFO
535
5.7 JMX_INVOKE
535
5.8 JMX_QUERY_NAMES
536
5.9 JMX_SET_ATTRIBUTE
537
5.10 JMX_UNREGISTER_MBEAN
538
5.11 JMX_WAIT_FOR_NOTIFICATION
538
6 JCL de UC4 pour SQL
540
6.1 Généralités sur le JCL SQL
540
6.2 SQL_EXECUTE_JOB
540
6.3 SQL_GET_COLUMNS
541
xx
Contents
6.4 SQL_GET_JOBS
542
6.5 SQL_GET_TABLES
542
6.6 SQL_ON_ERROR
543
6.7 SQL_ON_ROWCOUNT_ZERO
544
6.8 SQL_SET_STATEMENT_TERMINATOR
545
Glossaire
547
Automation Engine
1
1 Introduction
1.1 A propos des scripts UC4
UC4 possède un langage de script très complet qui lui est propre. Celui-ci vous permet d'automatiser
nombre de vos processus. Tous les objets activables comportent un onglet Traitement et, dans certains
cas, des onglets spéciaux dans lesquels vous pouvez conserver des instructions et des fonctions.
L'objectif de ce chapitre d'introduction est de vous familiariser avec les bases du langage de script de
UC4. Etape par étape, vous allez aborder de nouveaux points tels que l'élaboration du script et la définition
de Variables. En fin de chapitre figurent des conseils qui se révéleront très utiles lors de la création de
votre script UC4. Les novices de l'écriture de scripts ne sont pas les seules personnes visées. Les
experts y trouveront rapidement les informations recherchées sur les scripts, ceux-ci étant présentés de
manière à mettre en avant la syntaxe utilisée et les valeurs possibles pour les paramètres. Cette
configuration permet des recherches rapides.
Attention : le système d'autorisation UC4 couvre également l'utilisation des scripts UC4. Ainsi, si un
Utilisateur ne possède aucun droit sur des objets Variable, il ne peut ni les lire ni les charger à l'aide des
fonctions de script correspondantes.
Veuillez tenir compte du point suivant lors de l'activation ou la reprise d'objets via l'interface Utilisateur:
si vous avez quitté l'interface Utilisateur avant que la génération du script ne soit terminée, il se peut
que le résultat souhaité ne se produise pas.
Nous vous souhaitons beaucoup de plaisir avec l'apprentissage et l'utilisation du langage de script UC4.
2
Chapter 1 Introduction
1.2 Premières étapes
1.2.1 Introduction
Ce chapitre vous permet de vous familiariser avec l'utilisation des scripts UC4 et de démarrer
facilement grâce à différentes leçons que vous pouvez traiter étape par étape.
Les scripts UC4 vous permettent de contrôler différents processus et de les exécuter. Vous pouvez par
exemple modifier et exécuter des objets ou effectuer des opérations de calcul.
Les scripts simplifient les processus, car ils remplacent de nombreuses étapes manuelles. Ils mettent
également à disposition des fonctionnalités uniques, par exemple des fonctions de calcul ou des boucles
de traitement.
Tous les objets activables peuvent contenir des scripts. Les onglets script servent à cela.
Vous trouverez une description de l'élaboration générale des scripts ici Elaboration des Scripts :
Elaboration de script
1.2.2 Check-lists préalables
Certaines lignes de script et certains éléments de script nécessitent des conditions préalables
particulières.
Autorisations
Les scripts sont traités lors de l'exécution des objets. L'utilisateur doit donc avoir l'autorisation "X" pour les
objets à exécuter.
JCL
JCL est l'abréviation de "Job Control Language". Il s'agit de commandes qui sont exécutées sur certains
ordinateurs, par exemple une commande "dir" sur un ordinateur sous Windows.
Outre les commandes du système d'exploitation, il existe des scripts JCL propres à UC4 pour certaines
plateformes ou applications (par exemple : SAP). Vous les trouverez dans les chapitres suivants :
l
l
l
JCL UC4 pour les applications
JCL de UC4 pour JMX
JCL de UC4 pour SQL
L'utilisation de JCL nécessite qu'un objet Job et qu'un Agent soient définis pour le système d'exploitation
correspondant (par exemple : Windows), la plateforme (par exemple : SAP) ou l'application (par exemple :
SQL). L'Agent doit être actif et connecté au système UC4. Il doit également être activé pour les Clients
correspondants (voir : Agent - Onglet Autorisations).
Pour que les commandes JCL puissent être exécutées, un objet Login est également requis ; il contient les
informations de connexion valides du système d'exploitation, de la plateforme ou de l'application. Vous
effectuez votre sélection dans l'objet Job.
Les commandes JCL ne peuvent être utilisées que dans l'onglet Script des Jobs!
Le script :DATA permet de déclarer explicitement des lignes JCL.
Automation Engine
3
Eléments de script UC4 spéciaux
Les éléments de script suivants nécessitent des conditions préalables individuelles:
l
l
l
l
l
l
l
l
:REGISTER_OUTPUTFILE
Ne peut être utilisé que dans l'onglet Script des Jobs UNIX et Windows.
Le script SEND_MAIL
Connexion e-mail doit être configuré
:SEND_SNMP_TRAP
Le SNMP est configuré
SYS_ACT_HOST
Est utilisé dans l'onglet script des Jobs ou du système de fichiers ou des Evènements de console
(dans ce cas également, le !Script est possible).
PREP_PROCESS_FILE et PREP_PROCESS_FILENAME
Agent du système d'exploitation
PREP_PROCESS
Agent correspondant à la description du script
GET_CONSOLE, GET_FILESYSTEM et GET_WIN_EVENT
Sont utilisés uniquement dans les objets Evènement
ILM
Utilisation de ILM
1.2.3 Premier script
Objectif :
- Ecrire un texte à l'aide d'un script dans le protocole d'activation
Leçon 1
Créez d'abord un objet exécutable, de préférence un objet script (SCRI). Ouvrez-le et allez dans l'onglet
Script.
Ici, vous pouvez ajouter des lignes de script qui sont traitées lors de l'exécution de l'objet.
Pour écrire des informations dans le protocole d'activation (rapport) de la Tâche, utilisez l'élément :PRINT.
Saisissez les lignes suivantes dans l'onglet script :
:PRINT"Sortie avec :PRINT"
Enregistrez l'objet script et lancez-le. Ouvrez ensuite le dernier rapport. Dans l'onglet "Activation", vous
pouvez voir le texte souhaité avec la marque horaire principale (moment de la sortie).
4
Chapter 1 Introduction
1.2.4 Instructions de script
Objectifs :
- Utiliser des instructions de script
Leçon 2
Chaque ligne de script dans UC4, en dehors de JCL ou d'un commentaire, commence par une instruction
de script.
Les instructions de script sont des éléments de script UC4 qui commencent par deux-points : et sont
surlignés en bleu dans l'éditeur de script de l'Interface Utilisateur. Elles sont souvent associées à une
valeur.
L'élément de script :PRINT, par exemple, est une instruction de script (voir leçon 1).
L'élément de script :SEND_MSG, qui envoie un message à un Utilisateur UC4 donné, est également une
instruction. Le message est affiché dans la fenêtre des messages. Exemple :
: SEND_MSG"HUBER","EDV","Veuillez lancer la sauvegarde !"
L'instruction de script :PUT_ATT vous permet de modifier les attributs de chaque objet dans lequel le
script est utilisé. La ligne de script suivante active par exemple l'attribut "Compte interne" (onglet Attributs
par exemple : pour un objet script) :
: PUT_ATT INT_ACCOUNT="Compte interne"
Automation Engine
5
1.2.5 Variables de script
Objectifs :
- Créer des Variables de Script
- Remplir des Variables avec des valeurs
- Afficher des valeurs de Variables
Leçon 3
Les Variables de Script permettent d'enregistrer et de transmettre des valeurs dans les Scripts. Elles
peuvent par exemple contenir le code retour des fonctions de Script.
Les Variables de Script peuvent être créées avec un certain type de données. Ce dernier indique quelles
valeurs doivent être enregistrées dans les Variables de Script. Les types de données suivants sont
disponibles :
l
l
l
l
unsigned - Nombres entiers positifs
signed - Nombres entiers négatifs et positifs
float - Nombres à virgule flottante positifs et négatifs
string - Chaîne de caractères, la valeur doit être indiquée entre guillemets (litéral de Script)
Le nom des Variables commence par le caractère &, le deuxième caractère ne doit pas être un nombre.
Dans les étapes suivantes, nous allons créer deux Variables de Script, attribuer des valeurs et afficher les
valeurs dans le protocole d'activation :
Ouvrez d'abord un objet activable de votre choix et accédez à un onglet Script.
Nous créons la première Variable de Script avec l'élément :DEFINE. Le type de données est fixe et ne
peut plus être modifié par la suite. Comme la Variable doit enregistrer un nombre négatif, le type de
données "signed" est sélectionné. Vous attribuez une valeur avec l'élément :SET.
:DEFINE&nombre#,signed
:SET &nombre# = -1
Nous créons la deuxième Variable de Script directement avec :SET et lui attribuons la valeur "test". Dans
ce cas, la Variable peut ensuite être modifiée en une valeur de votre choix (en d'autres termes, le type de
données est fonction de la valeur).
:SET &chaîne# = "test"
Vous utilisez la ligne de Script suivante pour écrire les valeurs des deux Variables dans le protocole
d'activation. Le caractère & doit être indiqué deux fois pour pouvoir afficher le nom des Variables.
:PRINT"&&nombre# = &nombre#, &&chaîne# = &chaîne#"
La lignes suivante figure dans le protocole d'activation une fois l'objet enregistré et exécuté :
2011-04-06 14:48:17 - U0020408 &nombre# = -0000000000000001, &chaîne# =
test
Vous trouverez de plus amples informations sur les Variables de Script dans le document correspondant.
6
Chapter 1 Introduction
1.2.6 Fonctions de Script
Objectifs :
- Appeler une fonction script
- Enregistrer le code retour de la fonction dans une Variable de Script
- Afficher la Variable dans le protocole d'activation
Leçon 4
Les fonctions de Script sont des Scripts UC4 qui fournissent des codes retour. De nombreuses fonctions
ne fournissent pas seulement des valeurs, mais exécutent également des actions. Les fonctions de Script
ne doivent pas figurer en début de ligne et ne peuvent ainsi être utilisées qu'avec des instructions de
Script. Elles sont surlignées en rouge dans l'éditeur de Script de l'Interface Utilisateur.
Le nom de la fonction est suivi de parenthèses qui peuvent contenir des paramètres.
Dans la leçon suivante, nous allons effectuer une opération de calcul à l'aide d'une fonction script.
Nous créons d'abord une Variable de Script avec le type de données "float" (voir également leçon 3).
:DEFINE &résultat#, float
Nous utilisons ensuite la fonction script DIV pour effectuer une division. La fonction comporte deux
paramètres : Nombre 1 et 2.
Le nombre 1 est divisé par le nombre 2. Le code retour de la fonction est le résultat de la division. Nous
enregistrons ce résultat dans une Variable de Script ; l'instruction de Script :SET est requise.
Si nous combinons maintenant l'instruction de Script :SET, la Variable de Script &résultat# et la fonction
script DIV, nous obtenons la ligne suivante :
:SET&résultat# = DIV(1,4)
Nous voulons maintenant afficher le résultat dans le protocole d'activation.
:PRINT"Résultat : 1/4 = &résultat#"
Résultat dans le rapport d'activation :
2011-04-06 14:48:17 - U0020408 Résultat : 1/4 =
+0000000000000000.2500000000000000
La fonction script FORMAT vous permet par exemple maintenant de formater le résultat de la division.
Dans notre exemple, nous supprimons les zéros inutiles au début et à la fin.
:SET&format# = FORMAT(&résultat#,"0.00")
:PRINT"Résultat formaté : &format#"
Protocole d'activation :
2011-04-06 14:48:17 - U0020408 Résultat formaté : 0.25
1.2.7 Utilisation de JCL
Objectifs :
- Exécuter des commandes de système d'exploitation
Automation Engine
Leçon 5
Les commandes JCL (=Job Control Language) ne peuvent être utilisées que dans l'onglet Script des
Jobs. Il s'agit de commandes qui ne sont pas exécutées dans UC4, mais sur un système d'exploitation,
une plateforme ou une application particuliers.
L'élément de script UC4 :DATA permet d'indiquer explicitement des lignes JCL. Les commandes JCL
sont affichées en marron dans l'éditeur de script.
La leçon suivante vous permet de vous familiariser avec l'utilisation de JCL.
Nous voulons d'abord exécuter une commande de système d'exploitation sur un ordinateur. Pour cela,
créez un objet de Job, dans notre exemple un Job Windows. Ouvrez le Job et saisissez dans l'onglet
Attribut un Agent et un objet Login valide.
Attention : l'Agent doit être activé et les autorisations correspondantes doivent être définies (ainsi que les
autorisations des Clients sur les Agents et dans l'objet Utilisateur).
Accédez ensuite à l'onglet Script et saisissez des commandes. Nous utilisons les lignes suivantes pour
demander la liste des fichiers d'un répertoire donné sur l'ordinateur Windows :
C:
cd C:\temp
dir
Enregistrez et lancez le Job. Le résultat est disponible dans le dialogue de rapport - Rapport (onglet
"Rapport").
7
8
Chapter 1 Introduction
1.2.8 Boîtes de dialogue définies par l'utilisateur
Objectifs :
- affichage du texte dans une fenêtre de dialogue
- interrogation des valeurs de l'utilisateur
Leçon 6
Le langage de script UC4 vous permet de créer des boîtes de dialogue définies par l'utilisateur. Les textes
peuvent alors être affichés et/ou les valeurs peuvent être demandées par l'utilisateur. Condition requise
pour l'affichage des boîtes de dialogue : l'objet correspondant doit être activé par une interface utilisateur
(UserInterface ou WebInterface).
Dans un premier temps, créons une boîte de dialogue simple qui affiche uniquement un texte. Pour ce
faire, utilisez les instructions :BEGINREAD... :ENDREAD (indique le début et la fin d'une fenêtre de
dialogue) en rapport avec :PRINT.
Avec la ligne de script suivante :
Automation Engine
9
:BEGINREAD
: PRINT"TEST"
:ENDREAD
La fenêtre suivante apparaît comme résultat :
L'étape suivante consiste à créer une boîte de dialogue qui permet une saisie. Pour ce faire, utilisez
l'élément :READ (la désignation Masques READ est également souvent utilisée).
Dans l'exemple suivant, une sortie :PRINT et une entrée :READ sont combinées dans une boîte de
dialogue. La valeur est enregistrée dans une Variable de script (dans ce cas, la Variable est directement
créée avec l'élément :READ). Ensuite, la Variable est affichée dans le protocole d'activation.
:BEGINREAD
: PRINT"Entrée de texte"
: READ&SAISIE#,"00","Veuillez saisir le texte"
:ENDREAD
:PRINT "Texte de l'utilisateur : &SAISIE#"
1.2.9 Conditions IF
Objectifs :
- Créer des conditions IF
- Ajouter un bloc Sinon
Leçon 7
Il est également possible, dans le Script UC4, d'exécuter des instructions lorsque certaines conditions
sont remplies. Les conditions sont créées avec l'élément de script :IF... :ELSE... :ENDIF.
Pour commencer, nous créons une condition simple permettant de comparer deux nombres. L'élément de
script :IF doit tout d'abord être indiqué avec une condition. Saisissez ensuite toutes les lignes de Script qui
doivent être exécutées lorsque la condition existe. Chaque bloc IF est clôturé avec :ENDIF.
:IF 1<2
: PRINT"La condition survient"
:ENDIF
10
Chapter 1 Introduction
Dans l'exemple suivant, nous combinons un masque READ (voir leçon précédente) avec une instruction
IF. Nous créons d'abord un masque pour lequel l'utilisateur peut choisir entre les valeurs "Oui" et "Non". Si
l'utilisateur choisit "Oui", où la date et l'heure actuelles sont déterminées à l'aide d'une fonction script et
affichées dans le protocole d'activation.
:READ&VAR#,"'OUI','NON'", "Déterminer date/heure actuelles ?","OUI"
:IF&VAR# = "OUI"
: SET&HEURE# = SYS_TIMESTAMP_PHYSICAL()
: PRINT&HEURE#
:ELSE
: PRINT"Pas de date/heure déterminées"
:ENDIF
:ELSE dans un bloc IF permet de déterminer les instructions qui doivent être exécutées lorsque la
condition n'est pas remplie. Dans ce cas, un message est écrit dans le rapport d'activation.
1.2.10 Boucles dans le Script
Objectifs :
- boucles WHILE
- boucles PROCESS
Leçon 8
Les boucles exécutent certaines lignes de Script à plusieurs reprises. Deux boucles différentes sont
disponibles dans le Script UC4 :
l
l
Boucles WHILE : Elément de script :WHILE...:ENDWHILE
Boucles PROCESS : Elément de script :PROCESS... :TERM_PROCESS... :ENDPROCESS
Les boucles While répètent un bloc défini tant qu'une condition spécifique est remplie. La répétition se
termine une fois que la condition n'est plus remplie.
Automation Engine
11
Attention : avec les boucles While qui vont très souvent être exécutées les unes à la suite des autres,
une interruption du traitement du Script se produit. Ce comportement permet d'éviter les boucles sans fin.
Une référence à une séquence de données est transférée à la boucle de processus. Le nombre des
exécutions de boucle résulte alors du nombre de lignes de la séquence de données. Une séquence de
données est une liste interne, par exemple : une liste de fichiers ou les entrées d'objets Variable. Le type
de valeurs qui se trouvent dans la séquence de données dépend de l'élément correspondant.
Expliquons tout d'abord l'utilisation des boucles While à l'aide d'un exemple. La Tâche du Script est de vérifier si un Agent spécifique est disponible. Ce n'est que lorsque celui-ci est
actif qu'un Job doit être démarré sur cet Agent. Le Script peut alors se trouver dans un objet exécutable au
choix (p. ex. : SCRI). La condition requise est ainsi un Agent sur lequel l'utilisateur peut exécuter des
Jobs.
Dans un premier temps, utilisez l'élément SYS_HOST_ALIVE afin de vérifier si l'Agent est actif. Dans
notre exemple, l'Agent WIN03 est sélectionné. Si l'élément renvoie le code retour "Y", l'Agent est
disponible.
:SET&AGENT# = WIN03
:SET&ALIVE# = SYS_HOST_ALIVE(&AGENT#)
L'étape suivante consiste à créer une boucle While. Cette dernière doit répéter le contrôle de l'Agent avec
un certain délai d'exécution (afin d'éviter un trop grand nombre de cycles de boucles).
La boucle doit alors se terminer lorsque l'Agent est actif. La condition de la boucle doit par conséquent être
énoncée de la manière suivante : &ALIVE# NE "Y". L'opérateur de comparaison "NE" signifie "Ne
correspond pas". Vous trouverez d'autres opérateurs de comparaison dans la description du Script
:WHILE.
:WHILE&ALIVE# NE "Y"
: PRINT"En attente de l'Agent &AGENT#..."
: WAIT 60
: SET&ALIVE# = SYS_HOST_ALIVE(&AGENT#)
:ENDWHILE
:SET&ACT# = ACTIVATE_UC_OBJECT(TESTJOB)
Si l'Agent n'est pas actif, les instructions de la boucle sont répétées. L'instruction :WAIT retarde le
traitement du Script d'un certain temps ; dans notre cas, l'attente dure 60 secondes.
Si l'Agent est de nouveau disponible, le contrôle (SYS_HOST_ALIVE) indique la valeur "Y". La boucle se
termine ensuite et la ligne de Script qui active le Job "TESTJOB" est atteinte (fonction script : ACTIVATE_
UC_OBJECT). Le protocole d'activation vous indique si l'attente de l'Agent est encore en cours ou si le
Job a déjà été activé.
12
Chapter 1 Introduction
Les étapes suivantes vous montrent à présent comment utiliser les boucles Process.
L'objectif est de récupérer une liste de fichiers d'un ordinateur et de l'afficher dans le protocole d'activation.
Pour ce faire, nous avons besoin de l'élément PREP_PROCESS_FILENAME qui récupère la liste de
fichiers à partir de l'ordinateur d'un Agent. A l'aide de termes de filtres, vous pouvez alors uniquement
sélectionner des fichiers avec des noms spécifiques. La liste de fichiers est mise à disposition dans
l'élément comme séquence de données.
Pour traiter la séquence de données par ligne, la boucle de processus est nécessaire. Cette dernière
commence par :PROCESS et se termine par :ENDPROCESS. Pour chaque ligne dans la séquence de
données, la boucle est exécutée une fois.
L'élément GET_PROCESS_LINE vous permet d'obtenir le contenu de la ligne de séquence de données
actuelle ; dans notre cas, le chemin et le nom du fichier. Nous les éditons alors dans le rapport d'activation.
Dans notre exemple, nous utilisons l'Agent WIN01 pour récupérer la liste de fichiers. Nous déterminons
tous les fichiers texte du répertoire "C:\UC4\Agents\WIN01\temp" qui contient les fichiers log de l'Agent.
:SET &HND# = PREP_PROCESS_FILENAME("WIN01",
"C:\UC4\Agents\WIN01\temp\*.txt","Y",,)
:PROCESS &HND#
: SET &LINE#=GET_PROCESS_LINE(&HND#)
: PRINT &LINE#
:ENDPROCESS
Comme résultat, nous obtenons le chemin et le nom de tous les fichiers sélectionnés dans le protocole
d'activation.
Automation Engine
13
1.3 Principes de base
1.3.1 Elaboration des Scripts
Un Script comprend trois types de ligne différents :
Commentaires
l
Chaque ligne commençant par un point d'exclamation "!", sera considérée comme une ligne de
commentaire. Ces lignes ne sont pas considérées comme des étapes de traitement et sont donc
ignorées lors de l'exécution.
Exemple :
!Ligne de commentaire
l
l
Si le point d'exclamation figure au milieu d'une ligne, cette dernière n'est pas un commentaire.
Pour créer des commentaires de plusieurs lignes, sélectionnez les lignes voulues et cliquez sur le
bouton
l
de la barre d'outils de l'Interface Utilisateur.
N'hésitez pas à en user, car ils permettent aux autres Utilisateurs, ainsi qu'à vous-même si
vous consultez le Script après un certain temps, de comprendre aisément à quoi servent les lignes
du Script.
Script UC4
l
Les lignes commençant par deux-points ":" contiennent le Script UC4. Ceux-ci sont soit des
fonctions de Script (renvoient un code retour), soit des instructions de Script (ne renvoient pas de
code retour).
Exemple d'instruction : :PRINT "UC4 Automation Platform"
Exemple de fonction : :SET &RESULTAT# = ADD(2,2)
14
Chapter 1 Introduction
l
Le caractère de soulignement ("_") peut servir de caractère de continuation pour les lignes trop
longues. Il est placé à la fin d'une ligne qui se poursuit sur une autre ligne. La ligne suivante doit
commencer par le signe deux-points.
Lignes DATA
l
Une ligne commençant ni par "!", ni par ":" est considérée comme ligne DATA. Les lignes DATA ne
peuvent être utilisées que dans le type d'objet Job. Elles contiennent le JCL (Job Control Language)
du système cible. Si une ligne DATA commence par un ":", elle doit alors être explicitement
déclarée comme telle avec le Script :DATA.
Exemple :
copy test.txt c:\temp
l
l
Les Jobs pour solutions d'entreprise (SAP, PeopleSoft, applications Oracle) constituent une
particularité. UC4 met à leur disposition un JCL distinct.
Les Variables de Script contenues dans les lignes DATA sont remplacées par la valeur
correspondante. Les Variables de Script commencent par le caractère spécial "&". Si une ligne
DATA contient un "&" qui doit être conservé, vous devez le doubler. Si le "&" n'est pas suivi d'un
nom de Variable valide, la ligne DATA reste inchangée.
1.3.2 Structures de contrôle
Le Script sera exécuté ligne par ligne dans UC4. Il est parfois nécessaire dans de nombreux cas de faire
dépendre de certaines conditions une étape d'exécution. Deux structures de contrôle vous permettent
donc de contrôler le déroulement du Script.
L'instruction :IF n'exécute les lignes de Script que si la condition prédéfinie est vérifiée.
:IF + Condition
Lignes de Script
:ENDIF
L'instruction :WHILE répète les lignes de Script tant que la condition est vérifiée.
:WHILE Condition
Lignes de Script
:ENDWHILE
Pour de plus amples informations, reportez-vous aux descriptions de ces structures de contrôle.
1.3.3 Variable de Script
Dans les Scripts UC4, vous pouvez enregistrer des valeurs dans des Variables de Script. Celles-ci
peuvent aussi bien comporter des chiffres, des suites de caractères et des données de date et d'heure.
Automation Engine
15
La déclaration d'une Variable de Script grâce à un type de données particulier s'effectue avec le Script
:DEFINE. Le type de données détermine quelles valeurs doit contenir la Variable. L'attribution et la
modification de valeurs au sein du Script s'effectuent avec l'instruction :SET.
:DEFINE &FICHIER#, chaîne
:SET &FICHIER# = "temp.txt"
Il est également possible de créer directement les Variables de Script avec :SET (sans être précédé de
:DEFINE). Dans ce cas, la variable n'est pas limitée à un type de données spécifique et peut être modifiée
ultérieurement en une valeur quelconque. Exemple : :SET &VAR# = -1
:SET &VAR# = "chaîne"
La validité d'une Variable de Script prend fin après le traitement du Script.
Type de données :
Il existe quatre types différents de données avec différents domaines de valeurs pour l'utilisation de
Variables de Script. La définition du type de données s'effectue avec l'instruction de Script :DEFINE lors
de la déclaration de la Variable.
Type de données
Description
Plage de valeurs
unsigned
Nombres entiers positifs sans signes
0 à +9 999 999 999 999 999
signed
Nombres entiers avec signes
-9 999 999 999 999 999 à +9 999 999 999
999 999
string
Chaîne de caractères
de 1 à 1 024 caractères
flottant
Nombres variables avec signes
-9999999999999999.9999999999999999
à
+9999999999999999.9999999999999999
Premièrement, exécutez la déclaration de Variables puis attribuez la valeur adéquate.
:DEFINE
:DEFINE
:DEFINE
:DEFINE
:SET
:SET
:SET
:SET
&CHAINE#, chaîne
&SIGNED#, signed
&UNSIGNED#, unsigned
&FLOAT#, flottant
&CHAINE#= "1234abc"
&SIGNED#= -5
&UNSIGNED#= 24
&FLOAT#= -0.50
Le type de données "flottant" comprend également des nombres entiers positifs et négatifs. Il est
également possible, d'utiliser des nombres entiers positifs pour le type de données "signed".
Les Variables déjà utilisées ne peuvent pas être déclarées à nouveau. Le type de données d'une
Variable n'est pas modifiable.
Attention : lors d'opérations de calcul avec des nombres variables, le résultat peut être imprécis !
16
Chapter 1 Introduction
Syntaxe
Le nom des Variables de Script est constitué de 32 caractères alphanumériques au maximum, caractères
spéciaux compris ("$", "_", "@", "§" et "#"). Les signes diacritiques ne sont pas autorisés. Le premier
caractère du nom ne peut pas être un chiffre. Dans le Script, les Variables sont toujours indiquées avec le
signe "&" précédent le nom !
Attention : le nom de la Variable de Script doit être différent des Variables prédéfinies. . Il est
généralement recommandé de ne pas utiliser '$' en première position dans les noms de Variable
(directement après le caractère "&").
La casse des lettres utilisées dans les noms des Variables de Script n'a pas d'importance. Les Variables
de Script ne sont pas encadrées par des guillemets ouvrants et fermants.
Le nom d'une Variable de Script ne doit pas correspondre au début du nom d'une autre Variable.
Les dénominations similaires ne sont possibles que si un caractère spécial, par exemple, est ajouté à la fin
du nom. Dans l'exemple suivant, la désignation "Fin_Date" est affichée dans le protocole d'activation.
:SET &ACTIVITE# = "Fin"
:SET &ACTIVITE_DATE#= SYS_DATE()
:PRINT "&ACTIVITE#date"
Les Variables "&ACTIVITE_DATE" et "&ACTIVITE" ne sont pas autorisées,, car cette dernière
désignation n'est pas unique. Le nom des Variables et les caractères à afficher peuvent directement être
disposés les uns à la suite des autres. Ainsi, dans cet exemple, il est possible d'indiquer "Date de fin" et
"040101".
:SET &ACTIVITE = "Fin"
:SET &ACTIVITEdate =SYS_DATE()
:PRINT "&ACTIVITEdate"
Tableaux
Il est possible de créer des Tableaux en relation de Variables de Script. Ainsi, plusieurs valeurs différentes
peuvent être enregistrées dans une Variable. L'accès aux différentes valeurs s'effectue par l'index. Celuici est indiqué sous forme d'un numéro entre parenthèses [] après le nom de la Variable. Les Tableaux ne
peuvent être créés que lors de la déclaration de Variable à l'aide de :DEFINE. Le troisième paramètre
renseigne sur le nombre de valeurs (domaine de l'index).
Le nom des Tableaux doit comporter un maximum de 24 caractères alphanumériques, contrairement aux
Variables de Script normales.
:DEFINE &ARR#, unsigned, 10
:SET&ARR#[5] = 20
La taille maximale des Tableaux est 99999. L'index est toujours indiqué sous la forme d'une nombre positif
sans guillemet. L'accès au premier élément s'effectue par l'index 1.
Automation Engine
17
Attention : de la mémoire doit être réservée pour tous les éléments lors de la création de Tableaux. C'est
pourquoi les Tableaux ne doivent pas être créés avec plus d'éléments que nécessaire afin de réduire les
problèmes de performance.
Les champs des tableaux qui ne sont pas encore installés contiennent la valeur standard "" (Type de
données : chaîne) ou 0 (pour les types de données numériques).
Pour enregistrer directement plusieurs valeurs dans un tableau, il faut utiliser le Script :FILL. Aucun index
n'est alors indiqué. Cela est par exemple utile pour lire plusieurs colonnes des objets Variables :
:FILL &TAB#[] = GET_VAR("VARA","JOBS")
Attributions de valeurs
Les attributions de valeurs de Variables de Script sont exécutées avec le Script :SET. La valeur affectée
peut être indiquée avec ou sans guillemets (littéral de Script) (peut importe le type de données), ou peut
également être le code retour d'une fonction de Script.
:DEFINE&NUMERO#, unsigned
:SET &NUMERO# = 1234
:SET&NUMERO# = "1234"
:SET&NUMERO# = ADD(1,2)
Les Variables de Script peuvent être créées soit par un type de données spécifique (:DEFINE) ou bien
directement par l'attribution de valeur.
Les Variables créées avec :SET ne possèdent pas de type de données spécifiques. Cela peut être alors
toute attribution de valeur (dans la mesure où les valeurs supérieures ne sont pas dépassées).
Pour les Variable de Script qui comportent un type de données, les particularités suivantes doivent être
respectées :
Si la valeur attribuée ne correspond pas au type de données de la Variable de Script, le système tente de la
transformer et de l'adapter . Si cela n'est pas possible, une erreur de durée se produit. Il s'agit alors
concrètement des 2 cas suivants :
Erreur, Cas 1 : Un nombre négatif est affecté à une Variable de Script avec le type de données
"unsigned".
Exemple :
:DEFINE&NUMERO#, unsigned
:SET&NUMERO# = -1
Erreur, Cas 2 : Une Chaîne de caractères est affectée à une Variable de Script avec un type de données
chiffres qui ne contient aucun chiffre.
Exemple :
:DEFINE&NUMERO#, signed
:SET&NUMERO# = "abc123"
Si la chaîne de caractères correspond à un chiffre, l'attribution fonctionne de la sorte.
Exemple :
:DEFINE&NUMERO#, signed
:SET&NUMERO# = "-123"
Si un nombre en virgule flottante est affecté à une Variable, bien que le type de données ne prenne pas
cela en charge (concerne : "signed et "unsigned"), les chiffres après une virgule sont supprimés. Il n'y a
18
Chapter 1 Introduction
pas d'arrondi !
Exemple : Dans ce cas, le résultat de l'attribution est -10.
:DEFINE&NUMERO#, signed
:SET&NUMERO# = -10.654
:P&NUMERO#
Rapport :
-0000000000000010
Les chiffres possèdent de manière standard le format par défaut à 16 caractères. Les nombres
variables (type de données : nombre réel) possèdent également 16 caractères après la virgule. Les
emplacements qui ne sont pas utilisés, sont remplis avec des zéros. Pour supprimer des zéros en tête ou
à la fin, utilisez la fonction Script FORMAT.
1.3.4 Littéral de script
Un littéral de script consiste en une chaîne de caractères quelconque, placée entre guillemets simples
(') ou doubles (").
Exemple :
"Plate-forme d'automatisation UC4"
Un littéral de script peut également contenir des variables de script remplacées par la valeur
correspondante lorsque la ligne de script comportant le littéral est traitée.
Exemple :
:SET &HEURE# = SYS_TIME("HH:MM:SS")
:PRINT "Heure &HEURE#"
Affichage :
Heure 10:30:05
Nom UC4
Les noms UC4 constituent une forme particulière de littéral de script. Ils n'ont pas besoin d'être entourés
de guillemets simples ou doubles. Les éléments suivants font partie des noms UC4 :
l
l
l
Noms d'objet,
Attributs des objets et
Forme abrégée des types d'objet
Exemple :
:SET &STATUT# = SYS_HOST_ALIVE(WIN01)
Si toutefois le nom UC4 commence par un chiffre, vous devez utiliser des guillemets.
Attention : l'utilisation de la Chaîne de caractères <![[ ]]> provoque une erreur de syntaxe dans un
littéral de script et rend impossible l'enregistrement de l'objet. Pour contourner cette erreur, il existe
plusieurs méthodes:
Automation Engine
19
1. Insertion d'un commentaire qui contient les caractères.
Exemple :
!<![[ ]]>
:PRINT'<![[ ]]>'
2. Cela ne produit une erreur que lorsque les caractères apparaissent les uns après les autres, il est
également possible de former la Chaîne de caractères à partir de littéral de script.
Exemple : Utilisation par Variables de script
:SET&VAR# = "]]"
:PRINT'<![[ &VAR#>'
Exemple: Grâce au script STR_CAT
:SET&VAR# = STR_CAT("<![[ ]]",">")
:PRINT&VAR#
La combinaison réservée ##<Nombre> constitue une autre particularité. Si cette chaîne de caractères
est utilisée dans un littéral de script, le texte est ajouté au message dont le numéro a été indiqué pour
<Nombre>. Veuillez en tenir compte lors de l'utilisation du littéral de script !
Exemple :
:PRINT"##1800"
ou
:PRINT ##1800
entraîne le résultat suivant dans le rapport :
2011-06-15 13:01:51 - U0020408 ENDED_NOT_OK - en erreur|
1.3.5 Onglets de script
Le script UC4 est écrit dans des onglets de script. Tous les objets exécutables possèdent un ou
plusieurs onglets de ce type.
Vous trouverez ci-dessous un aperçu global de tous les onglets Script :
l
Onglet Script (tous les objets activables)
Le moment où a lieu le traitement du script dépend de l'option "Générer à l'Exécution" (onglet
"Attributs"). Si cette option n'est pas définie, le script est traité au démarrage de l'objet. Sinon, le
traitement se fait lorsque l'objet est exécuté.
Les heures de démarrage et d'exécution d'un objet ne doivent pas forcément correspondre.
C'est le cas, par exemple, si une heure de début antérieure a été définie.
l
Onglets Pré-traitement et Post-traitement (Transfert de Fichier, Job et Gestionnaire de File
d'Attente)
Les Jobs possèdent en outre un onglet Pré-traitement et un onglet Post-traitement. Ils seront,
comme leur nom l'indique, exécutés comme suit : D'abord Pré-Script puis script. L'heure suit le
paramètre "Générer à l'Exécution" Le post-traitement est exécuté à la fin du Job (voir aussi :
Déroulement de l'exécution d'un Job). Le Transfert de Fichier et le Gestionnaire de File d'Attente
possèdent uniquement un post-traitement, dont la fonction est la même que pour les Jobs.
20
Chapter 1 Introduction
l
Onglet !Script (Evènement)
Le traitement du !Script se fait lorsqu'un Evènement se produit.
Attention, il existe aussi un type d'objet appelé "Script".
Un onglet script peut contenir 32767 lignes. Cependant, seules les 1000 premières lignes sont prises
en compte, pour éviter les boucles lors de la génération et ainsi protéger le Serveur UC4. Si le script
contient plus de 1000 lignes, la génération est interrompue. Cette limite peut être modifiée avec l'attribut
MAX_JCL_LINES défini avec l'instruction de script :PUT_ATT.
1.3.6 Editeur de scripts
Chaque onglet script est équipé d'un éditeur de scripts. Il comporte de nombreuses fonctions facilitant la
création des scripts.
Mise en relief des composants de syntaxe
Les différentes parties du script sont mises en relief au moyen de couleurs pour mieux les distinguer :
l
l
l
l
l
l
vert pour les lignes de commentaire
bleu pour les instructions de script
rouge pour les fonctions de script
marron pour les lignes JCL
gris pour les chaînes de caractères
violet pour les Variables de script
L'éditeur de scripts met également en relief toutes les occurrences d'une Variable de script ou d'un script
lorsque vous positionnez le curseur de la souris sur son nom.
Complément automatique
Vous avez la possibilité d'exécuter le complément automatique grâce à la combinaison de touches CRTL
+ barre d'espacement. Il complète le nom des fonctions de script et des instructions de script. Si plusieurs
scripts sont concernés, une liste s'affiche à partir de laquelle vous pouvez sélectionner le script souhaité.
La touche Echap ferme la liste de complément automatique.
Automation Engine
21
En plus de la liste, l'éditeur de scripts affiche la page de la documentation UC4 qui contient une
description relative au script sélectionné si vous activez l'option correspondante dans les paramètres de
l'Interface Utilisateur.
Une fois que vous avez saisi le nom du script ou que vous l'avez sélectionné directement à partir de la
liste, les paramètres s'affichent si vous activez l'option correspondante dans les paramètres de l'Interface
Utilisateur. Le paramètre sur lequel le curseur de la souris est positionné est mis en gras.
Objets Include
Si vous associez des objets Include à votre script, vous pouvez en afficher le contenu. Pour ce faire,
cliquez sur le signe plus dans la partie gauche de l'onglet. Les lignes de script affichées de l'objet Include
sont éditables. Enregistrez le script pour enregistrer également les modifications effectuées dans l'objet
Include.
22
Chapter 1 Introduction
Les Utilisateurs ne disposant pas de droit de lecture ou d'écriture sur l'objet Include ne peuvent pas
afficher ou modifier le contenu. Lorsqu'ils ne peuvent pas modifier le contenu, les lignes de script de l'objet
Include s'affichent en gris et ne sont pas éditables.
Veuillez noter que la recherche dans le script effectue une recherche sur le contenu des objets Include
s'ils ont été ouverts au moyen du signe plus. Lors de l'exportation du script dans un fichier texte et lors de
la copie de lignes de script qui contiennent des objets Include, seuls les contenus d'objets Include qui ont
été ouverts sont pris en compte.
Si vous associez plusieurs fois un objet Include dans un script, il ne peut être modifié qu'à l'endroit où
vous l'ouvrez pour la première fois. L'éditeur de scripts affiche les autres occurrences en gris clair.
Préfixe de ligne et insertions de ligne
L'éditeur de scripts vous permet de créer des scripts rapidement et facilement en reprenant le préfixe de la
ligne actuelle dans la ligne suivante. Il peut également insérer des lignes de script dans les concepts
comme par exemple :IF ou :WHILE et les clôturer avec les instructions de clôture nécessaires. (par ex :
:ENDIF ou :ENDWHILE). Chacune de ces fonctionnalités est activée par défaut dans les paramètres de
l'Interface Utilisateur.
Lancement de la Documentation UC4
Sélectionnez le nom d'une fonction de script ou d'une instruction de script et appuyez sur la touche F1. La
documentation UC4 s'ouvre à la page qui contient une description du script.
Il est également possible de positionner le curseur de la souris sur le nom de la fonction de script ou de
l'instruction de script puis d'appuyer sur la touche F1.
Commandes de menu contextuel
Outre les commandes classiques comme "Annuler", "Copier" ou "Couper", vous avez accès aux
fonctionnalités suivantes :
l
l
l
La recherche permet non seulement de trouver des chaînes de caractères, mais également de les
remplacer.
Vous pouvez mettre en commentaire plusieurs lignes simultanément, ou en supprimer le
commentaire.
Vous avez, en outre, la possibilité d'archiver ou d'importer des scripts dans des fichiers.
Commande
Description
Couper
Copier
Coller
Commandes pour l'édition du texte
En
majuscules
En
minuscules
Modifie la casse du texte sélectionné
Annuler
Annule la dernière action
Répéter
Rétablit la dernière action annulée
Automation Engine
23
Mettre en
Ajoute un point d'exclamation au début d'une ou de plusieurs lignes pour indiquer qu'il
Commentaire s'agit de commentaires.
Supprimer le Supprime le point d'exclamation placé au début d'une ou de plusieurs lignes pour
Commentaire qu'elles ne soient plus considérées comme des commentaires.
Décaler Bloc
Aligner Bloc
Décale ou aligne la ligne ou le bloc de texte sélectionné.
Tout
reformater
Applique à toutes les lignes de l'onglet le style du script UC4.
Les points d'exclamation introduisant les lignes de commentaire et les deux-points
placés devant les lignes de script UC4 demeurent en tête de ligne. Le reste de la ligne
est décalé ou aligné.
Exemple :
la ligne
:
PRINT "Début du traitement"
aurait le format suivant :
:
PRINT "Début du traitement"
Importer du
Fichier
Importe le contenu d'un fichier texte à l'endroit où se trouve le curseur.
Exporter
dans Fichier
Exporte l'intégralité du contenu de l'onglet dans un fichier
Sélectionner
tout
Sélectionne l'intégralité du contenu de l'onglet
Recherche
Ouvre le dialogue de recherche de texte
1.3.7 Aide au démarrage
Le chapitre Exemples contient des exemples de Scripts dont l'utilisation avec les objets est expliquée. Il
offre aux utilisateurs débutants et expérimentés un aperçu du langage de script de UC4.
l
Aperçu - Exemples
La documentation UC4 répertorie l'ensemble des Scripts dans l'ordre alphabétique et selon leurs
fonctionnalités. Utilisez les deux aperçus suivants pour trouver rapidement le Script dont vous avez
besoin.
l
l
Aperçu - Liste alphabétique
Aperçu - Organisation fonctionnelle
Dans tous les onglets de Script, vous pouvez utiliser la touche F1 pour afficher la documentation UC4.
Cette touche permet d'ouvrir une page contenant une description du Script. Sélectionnez pour cela le nom
du Script (p. ex. PRINT) ou positionnez le curseur sur le nom. Vous disposez ainsi en permanence d'un
accès rapide à la description de la syntaxe.
24
Chapter 1 Introduction
1.4 Thèmes prolongés
1.4.1 Utilisation des éléments de Script
Dans les Scripts UC4, de nombreux objets suivent les mêmes étapes de traitement. Pour ne pas avoir à
les écrire et à les gérer dans chaque Script, il est recommandé de les enregistrer de manière centralisée
dans un objet Include. Les éléments de Script ainsi obtenus facilitent la gestion et accélèrent la création
de Scripts.
Voici les étapes de l'utilisation d'un objet Include :
1. Enregistrez dans un objet Include un ensemble de lignes de Script que vous utilisez souvent.
2. A l'emplacement du Script où ces lignes doivent être insérées, appelez l'instruction de Script
:INCLUDE, accompagnée du nom de l'objet Include.
3. Le Script contient également un paramètre avec lequel vous pouvez associer les lignes de Script à
l'objet. Il permet en effet de remplacer une chaîne de caractères donnée. L'attribution n'est valide
que pour la génération en cours et ne modifie pas l'objet Include.
Les lignes de Script de l'objet Include sont copiées à l'exact emplacement de l'objet dans le Script, où
vous appelez l'instruction :INCLUDE. Les fonctions de Script font par conséquent référence à l'objet
approprié et non à l'objet Include. Par exemple, la fonction de Script SYS_ACT_ME_NAME indique le nom
de l'objet et non le nom de l'objet Include.
Dans l'Editeur de scripts, vous pouvez afficher et modifier le contenu des objets Include intégrés. Cela
est possible en développant l'Include à l'aide du symbole + à l'extrémité gauche. Modifiez le Script d'un
Include développé et enregistrez l'objet pour que les modifications soient aussi prises en compte pour
l'objet Include ! En attribuant des droits aux utilisateurs (droits d'écriture pour les objets Include), vous
pouvez éviter des modifications non souhaitées sur les objets Include.
1.4.2 Traitement des erreurs
Lorsque vous créez un Script UC4, vous devez impérativement penser que des erreurs peuvent
survenir. Par conséquent, il est recommandé de prendre certaines mesures de précaution.
Création d'un Script
La toute première cause d'erreur est liée à la rédaction du Script UC4. Par conséquent, la syntaxe des
fonctions et instructions de Script utilisées est vérifiée dès l'enregistrement de l'objet. Ainsi, si vous
indiquez un nombre insuffisant ou trop important de paramètres, un message d'erreur apparaît pour vous
en avertir. Il contient le numéro de la ligne concernée par l'erreur.
La vérification du Script porte sur la syntaxe. Vous devez vous assurer vous-même de l'exactitude des
valeurs (noms des objets par exemple).
Utilisation des codes retour
Les codes retour vous renseignent sur le résultat des fonctions de Script. N'hésitez pas à les utiliser. Pour
connaître les codes retour possibles d'une fonction, reportez-vous à la description du Script.
Utilisation de l'instruction :ON_ERROR
Si une erreur survient lors de l'exécution du Script, un message d'erreur apparaît et le Script est
interrompu. Certains Scripts font cependant exception. L'instruction :ON_ERROR permet alors d'indiquer
Automation Engine
25
si le Script doit être interrompu. Si ce n'est pas le cas, vous pouvez accéder au message d'erreur avec des
fonctions de Script spéciales telles que SYS_LAST_ERR_NR et SYS_LAST_ERR_INS.
1.4.3 Utilisation d'objets Variable
Vous pouvez enregistrer les valeurs non seulement dans des Variables de Script, mais aussi dans des
objets Variable statiques. Si vous utilisez un grand nombre de valeurs, cette seconde méthode se révèle
très pratique. Le Script UC4 propose divers Scripts qui permettent de conserver, de lire et de supprimer
des valeurs dans des objets Variable.
La valeur est toujours enregistrée avec une clé qui permet d'y accéder.
L'utilisation d'objets Variable peut se faire manuellement dans l'Explorer de l'Interface Utilisateur ou avec
un Script :
l
l
l
CREATE_OBJECT : crée un objet Variable.
MODIFY_OBJECT : modification des attributs d'un objet Variable.
REMOVE_OBJECT : supprime un objet Variable.
Chargement de valeurs
L'instruction de Script :PUT_VAR permet d'enregistrer des valeurs. Si la clé correspondante n'existe pas
encore, la valeur est ajoutée. Sinon, la valeur existante est remplacée.
Lecture de valeurs
La fonction de Script PREP_PROCESS_VAR permet de déterminer une valeur, plusieurs valeurs ou la
totalité des valeurs d'un objet Variable.
Suppression de valeurs
L'instruction de Script :DELETE_VAR permet de supprimer des valeurs d'un objet Variable.
1.4.4 Changement d'attributs d'objet
Chaque objet possède un grand nombre d'attributs ayant un impact sur le traitement. La priorité et le
type de démarrage en sont des exemples. Il arrive souvent que la modification d'un attribut soit
nécessaire. Par exemple, lors d'un Transfert de Fichier, vous devrez peut-être changer d'hôte cible, car
une condition de calendrier donnée s'applique ou l'hôte n'est pas actif.
Les scripts :PUT_ATT et GET_ATT du script UC4 permettent de définir et de lire les attributs d'un objet.
:PUT_ATT GROUP = "GS.GROUPE"
:SET &START# = GET_ATT(GROUP)
Im Benutzerhandbuch finden Sie eine Liste der Attribute aller Objekte mit ihren möglichen Werten.
Il existe d'autres scripts pour les objets Alerte :
l
l
l
l
:ADD_ATT - Ajoute des destinataires à un objet Alerte pendant l'exécution.
:REMOVE_ATT - Retire des destinataires d'un objet Alerte pendant l'exécution.
:PUT_ATT_APPEND - Ajoute un élément à une Alerte pendant l'exécution.
GET_ATT_SUBSTR - Affiche une partie du texte d'une Alerte.
26
Chapter 1 Introduction
1.4.5 Codes retour des fonctions
Contrairement aux instructions de Script, les fonctions de Script renvoient des codes retour enregistrés
dans des Variables de Script. Ces codes retour peuvent être de simples caractères, des chaînes de
caractères complètes ou des nombres. Attention, les nombres renvoyés comportent toujours 16 chiffres
et commencent par des zéros.
Exemple :
:SET &SOMME# = ADD(2,2)
:PRINT &SOMME#
Le résultat affiché par l'instruction PRINT apparaît sous la forme suivante :
0000000000000004
Si vous générez un document contenant les nombres obtenus, par exemple un rapport, vous pouvez
supprimer les zéros en tête à l'aide de la fonction de Script FORMAT. Toutefois, ces zéros ne jouent
aucun rôle lors des traitements ultérieurs du nombre (opérations de calcul par exemple).
Le code retour peut également être un numéro d'erreur. La description du Script vous en donne définitions
et explications. Certains Scripts permettent le traitement ultérieur d'un numéro d'erreur.
Certains Scripts doivent être utilisés simultanément. Prenons l'exemple de la fonction de Script PREP_
PROCESS_FILE qui génère une séquence de données à partir du contenu d'un fichier texte. Le code
retour est une référence (descripteur) inutile en soi. La fonction de Script GET_PROCESS_LINE permet,
quant à elle, de lire toutes les lignes du fichier texte. Toutefois, elle a besoin pour ce faire de la référence
déterminée par PREP_PROCESS_FILE.
1.4.6 Calcul
Ce document explique les opérations de calcul qui peuvent être réalisées à l'aide du script UC4.
Script
Le script UC4 vous permet d'utiliser les 4 types d'opération de base dans le script UC4 :
l
l
l
l
Addition
Soustraction
Multiplication
Division
Vous disposez également de la fonction de script MOD qui calcule le reste d'une division.
La fonction de script RANDOM vous permet de générer, si nécessaire, des nombres aléatoires.
Le résultat de l'opération est enregistré dans une Variable de script.
Exemple :
:SET &DIFFERENCE# = SUB(100,50)
Dans les opérations de calcul, les nombres négatifs (type de données : "signed") et les nombres décimaux
(type de données : "float") sont aussi pris en charge. Pour cela, la variable cible qui contient le résultat du
calcul doit présenter le type de données approprié. Le type de données "string" n'est pas autorisé pour les
opérations de calcul !
Automation Engine
27
Les chiffres après la virgule des résultats sont supprimés lorsque le type de données de la variable cible
ne prend pas en charge les nombres décimaux.
Si une opération de calcul fournit un résultat négatif et que le type de données de la variable cible ne
prend pas en charge les signes, une erreur d'exécution se produit !
Il donc recommandé d'utiliser comme type de données de la variable cible le type de données de calcul le
plus élevé (voir le tableau). Le résultat du calcul ne doit pas dépasser la valeur "9 999 999 999 999 999".
Types de données des opérandes
Types de données autorisés de la
variable cible
unsigned, unsigned
unsigned, signed, float
unsigned, signed
signed, float
unsigned, float
flottant
signed, signed
signed, float
signed, float
flottant
float, float
flottant
Le type de données le plus élevé est "float" (nombres décimaux positifs et négatifs). Vient ensuite le
type de données "signed" (nombres entiers positifs et négatifs). Le type de données "unsigned" ne prend
en charge que les nombres entiers positifs. Il s'agit du type de données le moins élevé.
Exemple : Le type de données de la variable de résultat "&SUM#" doit être au moins "signed" si un nombre
négatif a été indiqué comme opérande. Le type de données "float" est aussi possible.
:DEFINE &UNSIGNED#,unsigned
:DEFINE &SIGNED#,signed
:DEFINE &SUM#,signed
:SET&UNSIGNED# = 12
:SET&SIGNED# = -5
:SET &SUM# = ADD(&SIGNED#,&UNSIGNED#)
Cette ligne résulterait en une erreur de script si la variable &signed# contenait une valeur négative. Si la
valeur de la variable est positive, l'opération fonctionne.
:SET &UNSIGNED# = ADD(&SIGNED#,&UNSIGNED#)
Attention : lors d'opérations de calcul avec des nombres variables, le résultat peut être imprécis !
Résolution d'un terme arithmétique
Dans UC4, il est également possible de résoudre un terme arithmétique à l'aide du script :SET et
d'enregistrer le résultat dans une variable. Le script est ainsi nettement raccourci et simplifié, car un script
individuel n'est pas nécessaire pour chaque opération de calcul.
Si la variable cible présente le type de données "unsigned" et que le résultat du calcul donne un nombre
négatif, une erreur d'exécution de produit. Si le type de données de la variable cible ne prend pas en charge
les nombres décimaux, ils sont également supprimés.
Parallèlement aux types de calcul de base, le calcul peut contenir des parenthèses et des signes.
l
l
Addition
Soustraction
28
Chapter 1 Introduction
l
l
l
l
Multiplication
Division
Parenthèses "()"
Signes
Une ligne qui contient des opérateurs de calcul (+,-,*,/) est généralement traitée comme un terme. Veillez à
ne pas placer le terme entre guillemets simples ou doubles. Sinon, il est interprété comme une chaîne de
caractères.
L'utilisation de fonctions de script n'est pas autorisée au sein des expressions arithmétiques.
Veillez à la pondération des opérateurs (l'opérateur de multiplication est prioritaire sur l'opérateur de
soustraction).
Exemple :
:DEFINE &UNSIGNED#,unsigned
:DEFINE &FLOAT#,float
:DEFINE &RES#,float
:SET&UNSIGNED# = 12
:SET&FLOAT# = -0.50
:SET&RES# = &FLOAT#*3 + (-&UNSIGNED#) - 3
1.4.7 Chaînes de caractères
Le Script UC4 propose divers éléments applicables aux chaînes de caractères. Les plus importantes
sont présentées ici. Vous trouverez la liste de toutes les fonctions de Script dans l'aperçu fonctionnel.
Détermination de la longueur d'une chaîne de caractères
Description
Exemple
STR_LENGTH : indication du nombre de
caractères.
:SET &LONGUEUR# = STR_LENGTH
("UC4")
Résultat
3
Comparaison de chaînes de caractères
Description
Exemple
STR_MATCH : comparaison de deux
chaînes de caractères.
:SET &COMPARAISON# = STR_MATCH
("UC4", "System")
Résultat
N
Association de chaînes de caractères
Description
Exemple
Résultat
STR_CAT : association de deux chaînes
de caractères.
:SET &CHAINE# = STR_CAT("UC4",
"-Système")
Système
UC4
Automation Engine
29
Recherche d'une chaîne de caractères
Description
Exemple
STR_FIND : indication de l'emplacement où se
trouve la chaîne de caractères recherchée.
:SET &POSITION# = STR_FIND
("Système UC4", "Système")
Résultat
5
Remplacement de caractères
Description
Exemple
Résultat
STR_SUBSTITUTE : remplacement :SET &CHAINE# = STR_SUBSTITUTE
Système
("Environnement
UC4",
"Environnement",
d'une partie d'une chaîne de
UC4
"Système")
caractères.
Troncation d'une chaîne de caractères
Description
Exemple
Résultat
SUBSTR : indication d'une partie d'une
chaîne de caractères
:SET &PARTIECHAINE# = SUBSTR
("Système UC4", 5)
Système
Retour à la ligne
Description
Exemple
Résultat
UC_CRLF : insertion d'un retour à la
ligne.
:SET &NL#= UC_CRLF()
Système
:SET &CHAINE# = "Système UC4 &NL#UC4
"
1.4.8 Formats de date, d'heure et de période
Certaines instructions et fonctions de script permettent d'indiquer le format des dates, heures ou
périodes. Les formats autorisés sont répertoriés dans les tableaux suivants.
Formats de date
[Formats de date] [ Formats d'heure ] [Formats de période]
Les abréviations "A" ou "Y" pour l'année, "M" pour le mois et "J" ou "D" pour le jour sont utilisées dans les
formats de date.
Format de date
Exemple/Prévisualisation
AAMMJJ ou YYMMDD
001231
AA.MM.JJ ou YY.MM.DD
00.12.31
AA-MM-JJ ou YY-MM-DD
00-12-31
30
Chapter 1 Introduction
AAAAMMJJ ou YYYYMMDD
20001231
AAAA.MM.JJ ou YYYY.MM.DD
2000.12.31
AAAA-MM-JJ ou YYYY-MM-DD
2000-12-31
JJMMAA ou DDMMYY
311200
JJ.MM.AA ou DD.MM.YY
31.12.00
JJ-MM-AA ou DD-MM-YY
31-12-00
JJMMAAAA ou DDMMYYYY
31122000
JJ.MM.AAAA ou DD.MM.YYYY
31.12.2000
JJ-MM-AAAA ou DD-MM-YYYY
31-12-2000
MMDDYY
123100
MMDDYYYY
12312000
MM/DD/YY
12/31/00
MM/DD/YYYY
12/31/2000
Les formats de date peuvent également être indiqués en tant que paramètres spéciaux. "WW" et "LLL"
sont deux exemples de paramètres spéciaux. "WW" désigne le jour de la semaine sous la forme d'une
abréviation à deux caractères. "LLL" correspond au jour actuel de l'année.
Vous ne pouvez pas utiliser les paramètres spéciaux des formats de date dans les fonctions de script qui
reposent sur l'emploi d'une date. Le format de sortie de la date trouvée constitue une exception.
Format de date (paramètres spéciaux)
Exemple/Prévisualisation
AA ou YY
00
AAAA ou YYYY
2000
MM
12
JJ ou DD
31
WW
FR
LLL
365
Formats d'heure
[ Formats de date ] [Formats d'heure] [Formats de période]
Les abréviations "H" pour les heures, "M" pour les minutes et "S" pour les secondes sont utilisées dans les
formats d'heure.
Format d'heure
Exemple/Prévisualisation
HHMMSS
235959
HH:MM:SS
23:59:59
HHMM
2359
HH:MM
23:59
MMSS
5959
Automation Engine
MM:SS
59:59
Format d'heure (paramètres spéciaux)
Exemple/Prévisualisation
HH
23
MM
59
SS
59
31
Formats de période
[ Formats de date ] [ Formats d'heure ] [Formats de période]
Les abréviations "A" ou "Y" pour l'année, "Q" pour le trimestre, "M" pour le mois et "W" pour la semaine
calendaire sont utilisées dans les formats de période.
Les formats de période suivants peuvent être employés dans les scripts FIRST_OF_PERIOD, LAST_
OF_PERIOD, ADD_PERIOD et SUB_PERIOD.
Format de période
Exemple/Prévisualisation
AA ou YY
00
AAAA ou YYYY
2000
Q
3
MM
06
WW
53
WS *
53
* Le format de période "WS" peut seulement être utilisé dans les fonctions de script qui déterminent le
premier ou le dernier jour d'une période. Avec ce format de période, le dimanche est considéré comme
premier jour de la semaine. En revanche, avec "WW", la semaine part du lundi.
1.4.9 Envoi d'Alertes
Les Alertes constituent un bon moyen d'attirer l'attention sur les résultats d'un traitement. Il existe
quatre types d'envoi de messages avec un Script :
Sorte
Description
Objet
Alerte
La méthode la plus fréquemment employée est l'activation d'un objet Alerte. Elle permet de
prévenir simultanément plusieurs Utilisateurs d'UC4. Utilisez la fonction de Script
ACTIVATE_UC_OBJECT pour activer un objet Alerte.
SEND_
MAIL
Cette fonction de Script permet d'envoyer un e-mail à un destinataire quelconque.
32
Chapter 1 Introduction
:SEND_ Cette instruction de Script convient aux messages d'informations succincts. Ils apparaissent
MSG
dans la Fenêtre des Messages d'un Utilisateur d'UC4.
:SEND_ Cette instruction de Script s'avère utile lorsque vous vous servez des possibilités
SNMP_ d'intégration d'UC4 dans Frameworks. Elle permet l'envoi d'interruptions définies par
TRAP
l'utilisateur.
1.4.10 Traitement du Script
L'UC4 Automation Engine traite les Scripts ligne par ligne. A intervalles réguliers, le résultat des
éléments de script exécutés est écrit dans la base de données UC4 (par exemple, la valeur définie pour
un objet Variable avec :PUT_VAR).
Ce processus est également désigné "Commit". D'autres Scripts ont ensuite accès aux nouvelles valeurs
ou aux valeurs modifiées lorsqu'elles ont été saisies dans la base de données.
L'UC4 Automation Engine effectue une validation automatique toutes les cinq secondes. Cette opération a
également lieu avec les éléments de script suivants :
:BEGINREAD... :ENDREAD
FORECAST_OBJECT
PREP_PROCESS_FILE
:READ
FORECAST_TASK
PREP_PROCESS_FILENAME
:SET_UC_SETTING
GET_FILESYSTEM
PREP_PROCESS_REPORT
:WAIT
GET_UC_SETTING
REMOVE_OBJECT
ACTIVATE_UC_OBJECT
IMPORT
RESTART_UC_OBJECT
AUTOFORECAST
MODIFY_OBJECT
SEND_MAIL
CANCEL_UC_OBJECT
MODIFY_UC_OBJECT
SYS_SERVER_ALIVE
CREATE_OBJECT
MOVE_OBJECT
TOGGLE_SYSTEM_STATUS
EXPORT
PREP_PROCESS
L'instruction :WAIT 0 permet de forcer une validation.
1.5 Eléments de script plus pris en charge
Dans les versions UC4, des modifications ont été apportées à certains Scripts.
La liste suivante récapitule les Scripts concernés et indique comment se traduisent ces adaptations :
l
:REPLACE_JP_STRUCTURE
Cette instruction de Script a été renommée :REPLACE_STRUCTURE dans la version 8.00A.
L'ancien style d'écriture est toujours pris en charge.
l
:SET_UC_SETTING
Le paramètre MAX_PARALLEL a été renommé WORKLOAD_MAX dans la version 6.00A.
L'ancien style d'écriture est toujours pris en charge.
l
:XML_CLOSE_DOCU
Automation Engine
33
Cette instruction de Script a été renommée :XML_CLOSE dans la version 6.00A. L'ancien style
d'écriture est toujours pris en charge.
l
GET_UC_SETTING
Le paramètre MAX_PARALLEL a été renommé WORKLOAD_MAX_JOB dans la
version 6.00A. Lors de la mise à jour de la base de données UC4, les Scripts sont automatiquement
adaptés.
l
PREP_PROCESS_HOSTGROUP
Cette fonction script a été renommée PREP_PROCESS_AGENTGROUP dans la
version 8.00A. L'ancien style d'écriture est toujours pris en charge.
l
XML_OPEN_DOCU
Cette fonction script a été renommée XML_OPEN dans la version 6.00A. L'ancien style
d'écriture est toujours pris en charge.
l
CINT et CSTR
Les fonctions Script ne sont pas prises en charge pour les nombres négatifs et à virgule
flottante. L'élément de script CONVERT depuis la version 9.00A reprend la fonction de
conversation dans tous les types de données.
l
SYS_ACT_JPNAME et SYS_ACT_JPNR
Ces Scripts possèdent les mêmes fonctions que SYS_ACT_PARENT_NAME et SYS_ACT_
PARENT_NR. L'utilisation reste toutefois possible.
l
SYS_ACT_JOBNAME et SYS_ACT_JOBNR
La même fonction que SYS_ACT_ME_NAME et SYS_ACT_ME_NR. Les fonctions de Script
sont toutefois prises en charge.
34
Chapter 2 Scripts - Liste alphabétique
2 Scripts - Liste alphabétique
Vous trouverez ici une liste alphabétique de tous les scripts et leur application.
Instructions de script
[Instructions de script] [Fonctions de script]
Instruction de script
Description
:ADD_ATT
Ajoute des destinataires à un objet Alerte pendant l'exécution
:ADD_COMMENT
Ajoute un commentaire à une Tâche
:ATTACH_SYNC
Attribue un objet Sync à une Tâche
:BEGINREAD...
:ENDREAD
Débute et termine une boîte de dialogue destinée aux questions posées à
l'Utilisateur
:CLOSE_PROCESS
Supprime une séquence de données au sein d'un script
:CONST
Crée une Variable de script comme constante avec une valeur définie.
:DATA
Déclaration explicite d'une ligne DATA dans le script
:DEFINE
Création d'une Variable de script avec un type spécifique de données.
:DELETE_VAR
Supprime une ou toutes les valeurs d'un objet Variable statique
:DISCONNECT
Déconnecte du système UC4
:EXIT
Termine le traitement du script avec un code retour
:EXT_REPORT_OFF
Désactive la journalisation du script d'une Tâche
:EXT_REPORT_ON
Active la journalisation du script d'une Tâche
:FILL
Enregistre plusieurs valeurs dans un Tableau de script.
:GENERATE
Contrôle la gestion des lignes de script pendant le traitement d'un script
:IF... :ELSE... :ENDIF
Ramification en fonction de conditions
:INCLUDE
Associe un objet Include au script actuel
:INC_SCRIPT
Associe un script à un autre script du même objet
:JCL_CONCAT_
CHAR
Forme des lignes JCL jusqu'à une taille maximale de 2 Ko
:JCL_SUBSTITUTE
Remplace une chaîne de caractères du JCL par une autre chaîne de
caractères
:MODIFY_STATE
Modifie le code retour ou le texte de statut d'un Job une fois ce dernier terminé
:ON_ERROR
Définit des réactions associées à certaines erreurs ou certains messages de
script
:PRINT
Affiche du texte dans une boîte de dialogue destinée aux questions posées à
l'Utilisateur ou dans le protocole d'activation d'un objet
:PROCESS... :TERM_
PROCESS...
:ENDPROCESS
Boucle pour le traitement par lignes d'une séquence de données,
par exemple pour les fichiers séquentiels ou les résultats de commande
Automation Engine
:PSET
Attribue une valeur à une Variable d'objet.
:PUBLISH
Définir les Variables de script et les tableaux comme Variables d'objet.
:PUT_ATT
Définit ou modifie des attributs d'objets
:PUT_ATT_APPEND
Etend le texte du message de l'Alerte pendant l'exécution
:PUT_PROMPT_
BUFFER
Enregistre le nom et le contenu d'une Variable de script dans un cache
:PUT_READ_BUFFER Enregistre le nom et le contenu d'une Variable de script dans un cache
:PUT_VAR
Enregistre les valeurs dans un objet Variable statique
:PUT_VAR_COL
Enregistre une valeur dans une colonne spécifique d'un objet Variable
statique
:READ
Invite l'Utilisateur à saisir des données dans la boîte de dialogue
:REGISTER_
OUTPUTFILE
Enregistre un fichier comme résultat externe de Job
:REMOVE_ATT
Supprime des destinataires d'un objet Alerte pendant l'exécution
:REPLACE_
STRUCTURE
Remplace la structure d'un Workflow lors de son activation par la structure
d'un autre Workflow.
:RESTART
Définit des points de redémarrage dans un objet
:RSET
Attribue une valeur à une Variable de script et l'enregistre dans le rapport
d'activation
:SEND_MSG
Envoie des messages aux Utilisateurs de l'Interface Utilisateur
:SEND_SNMP_TRAP
Envoie une interruption SNMP
:SET
Attribue une valeur à des Variables de script
:SET_CALE
Attribue une date à un Calendrier d'un Groupe Calendrier
:SET_CONDITION
Définit l'heure de début au plus tôt dans les Workflows.
:SET_LAST_ERR
Définit le numéro et le texte de l'erreur
:SET_SCRIPT_VAR
Définit les valeurs des Variables de script par accès indirect
:SET_UC_SETTING
Modifie les paramètres système au cours de l'exécution
:SHUTDOWN
Ferme un système UC4
:STOP
Interrompt le traitement d'un script
:SWITCH ... :CASE ...
:ENDSWITCH
Vérifie si la valeur d'une Variable correspond à certaines valeurs et exécute
différentes actions en fonction de cela.
:TERMINATE
Met fin à un Agent, un processus de travail ou de communication
:WAIT
Suspend le traitement du script pour une période donnée
:WHILE...
:ENDWHILE
Boucle permettant de répéter l'exécution de parties du script
:XML_CLOSE
Ferme un document XML
35
36
Chapter 2 Scripts - Liste alphabétique
Fonctions de script
[Instructions de script] [Fonctions de script]
Fonction script
Description
ACTIVATE_UC_OBJECT
Active un objet
ADD
Exécute une addition
ADD_DAYS
Ajoute des jours à une date indiquée
ADD_PERIOD
Ajoute une période à une date indiquée
ADD_TIME
Ajoute une heure à une autre
ADD_TIMESTAMP
Ajoute l'heure à une marque horaire
ALPHA2RUNNR
Convertit le nom d'un Job ou d'un fichier de rapport
en RunID
AUTOFORECAST
Calcule les données de simulation pour des
activités futures.
CALE_LOOK_AHEAD
Détermine la date suivante en fonction des
conditions de calendrier.
CANCEL_UC_OBJECT
Interrompt un objet activé
CHANGE_LOGGING
Changement du fichier log.
CONV_DATE
Change le format d'une date
CONV_LC
Transforme toutes les majuscules d'une chaîne de
caractères en minuscules
CONV_TIMESTAMP
Convertit la date et l'heure dans un autre Fuseau
horaire
CONV_UC
Transforme toutes les minuscules d'une chaîne de
caractères en majuscules
CONVERT
Convertit le type de données d'une valeur.
CREATE_OBJECT
Crée un objet (uniquement Groupe Calendrier, Login
et Variable)
CREATE_PROCESS
Crée une nouvelle séquence de données.
DAY_OF_YEAR
Indique le jour actuel de l'année
DIFF_DATE
Détermine la différence (en jours) entre deux dates
DIFF_TIME
Détermine la différence entre deux heures
DIV
Exécute une division
EXPORT
Exporte des objets dans un fichier XML
FIND
Recherche un Tableau de script et retourne l'Index
correspondant.
FIRST_OF_PERIOD
Détermine le premier jour de la période pour la date
indiquée
FORECAST_OBJECT
Crée une simulation pour l'objet indiqué
FORECAST_TASK
Crée une simulation pour la Tâche courante
Variable
prédéfinie
Automation Engine
FORMAT
Modification du formatage d'un nombre
GET_ATT
Indique la valeur des attributs d'un objet pendant la
génération
GET_ATT_PLAIN
Indique la valeur des attributs d'une Tâche pendant
la génération sans suppression des Variables
GET_ATT_SUBSTR
Indique une partie du texte du message de l'Alerte
GET_BIT
Vérifie qu'un bit particulier est défini dans un champ
de bit
GET_CONDITION
Indique l'heure de début la plus ancienne des
Workflows.
GET_CONSOLE
Lit les données de message de l'Evènement de
console survenu
GET_EVENT_INFO
Lit des données des Evènements de console, de
fichier ou de base de données survenus
GET_FILESYSTEM
Détermine les différentes valeurs de système de
fichiers à partir d'une machine à l'emplacement
correspondant au chemin indiqué
GET_LOGIN
Lit les informations à partir d'objets Login.
GET_MSG_TXT
Détermine le texte du message de la dernière erreur
survenue
GET_MSG_TYPE
Indique le type d'un numéro de message.
GET_OBJECT_TYPE
Indique le type d'objet de la Tâche
GET_OH_IDNR
Indique le numéro interne d'un objet.
GET_PARENT_NAME
Renvoie le nom de la Tâche supérieure (parent)
GET_PARENT_NR
Renvoie le numéro courant (RunID) de la Tâche
supérieure (parent)
GET_PARENT_TYPE
Renvoie le type d'objet de la Tâche supérieure
(parent)
GET_PROCESS_INFO
Déterminer des informations d'une séquence de
données.
GET_PROCESS_LINE
Détermine le contenu actuel des lignes d'une
séquence de données
GET_PUBLISHED_
VALUE
Déterminer la valeur des Variables d'Objet et
PromptSet d'une tâche définie.
GET_SCRIPT_VAR
Indique les valeurs des Variables de script par
accès indirect
GET_STATISTIC_
DETAIL
Détermine les détails à partir d'un enregistrement
statistique d'un objet activable
GET_SYNC
Lit la valeur ou le statut actuel d'un objet Sync
GET_UC_OBJECT_NR
Indique le RunID d'un objet activé
GET_UC_OBJECT_
STATUS
Indique le statut d'un objet activé
37
38
Chapter 2 Scripts - Liste alphabétique
GET_UC_SERVER_
NAME
Détermine le nom du processus de travail dans
lequel le script est exécuté
GET_UC_SETTING
Lit les paramètres système actuels
GET_UC_SYSTEM_
NAME
Détermine le nom du système UC4
GET_VAR
Indique la valeur d'un objet Variable.
GET_WIN_EVENT
Détermine des entrées dans le protocole système,
de sécurité et d'application de Windows NT, 2000
ou XP lorsqu'un Evènement se produit
HEX
Convertit une chaîne de caractères au format
hexadécimal
ILM
Contrôle la fonctionnalité ILM
IMPORT
Importe des objets d'un fichier XML
IS_GROUP_MEMBER
Vérifie l'appartenance d'un Utilisateur à un Groupe
Utilisateur
ISNUMERIC
Vérifie qu'une chaîne de caractères est numérique
LAST_OF_PERIOD
Détermine le dernier jour de la période pour la date
indiquée
LENGTH
Détermine la longueur d'un Tableau de script.
LOAD_PROCESS
Charge une séquence de données enregistrée.
MID
Copie les caractères d'une chaîne de caractères
MOD
Indique le reste d'une division
MODIFY_OBJECT
Modifie un objet disponible (uniquement Groupe
Calendrier, Login et Variable)
MODIFY_SYSTEM
Exécute des actions ServiceManager ou des
modifications de Queue.
MODIFY_TASK
Modifie les Workflows en cours.
MODIFY_UC_OBJECT
Modifie l'attribut d'un objet activé
MOVE_OBJECT
Déplace un objet dans un dossier
MULT
Exécute une multiplication
PREP_PROCESS
Exécute avec l'aide d'objets Job spécifiques (Jobs
d'Evènement) des commandes sur un ordinateur et
fournit la sortie de console comme liste interne
(séquence de données) qui peut être utilisée pour
des traitements ultérieurs.
PREP_PROCESS_
AGENTGROUP
Détermine les Agents d'un objet Groupe Agent
grâce à des critères de sélection et met le résultat à
disposition comme liste interne (séquence de
données) pour un traitement ultérieur.
PREP_PROCESS_
COMMENTS
Détermine les paramètres de Filtre de l'Marque
horaire, de l'Utilisateur et du Texte des
commentaires de Tâches et met le résultat à
disposition comme liste interne (séquence de
données) pour un traitement ultérieur.
&$SYSTEM#
Automation Engine
PREP_PROCESS_FILE
Détermine grâce aux critères de filtrage par ligne le
contenu d'un fichier texte qui se trouve sur un
ordinateur indiqué et met le résultat à disposition
comme liste interne (séquence de données) pour un
traitement ultérieur.
PREP_PROCESS_
FILENAME
Détermine une liste avec le nom des fichiers qui se
trouvent sur l'ordinateur indiqué et met cette
dernière à disposition comme liste interne
(séquence de données) pour un traitement ultérieur.
PREP_PROCESS_
REPORT
Détermine les lignes de rapport des objets
activables à l'aide de critères de filtrage et met le
résultat à disposition comme liste interne
(séquence de données) pour un traitement ultérieur.
PREP_PROCESS_
REPORTLIST
Détermine la liste de sorties enregistrées des Jobs
déjà effectués et met le résultat à disposition
comme liste interne (séquence de données) pour un
traitement ultérieur.
PREP_PROCESS_VAR
Détermine une liste de valeurs d'un objet Variable à
l'aide de critères de sélection et met le résultat à
disposition comme liste interne (séquence de
données) pour un traitement ultérieur.
PUT_PROCESS_LINE
Ajoute une ligne à une séquence de données
spécifique.
RANDOM
Génère des nombres aléatoires
REMOVE_OBJECT
Supprime un objet disponible
RERUN_UC_OBJECT
Poursuite d'un Workflow spécifique.
RESTART_UC_OBJECT
Répète l'exécution d'une Tâche
ROLLBACK_UC_
OBJECT
Exécuter un rollback d'une tâche définie.
RUNNR2ALPHA
Convertit un RunID en nom de fichier
correspondant
SAVE_PROCESS
Enregistre une séquence de données spécifique.
SEND_MAIL
Envoie un e-mail à un Utilisateur
SET_SYNC
Exécute l'action définie d'un objet Sync
STR_CAT
Lie deux chaînes de caractères à une troisième
STR_CUT
Copie les caractères d'une chaîne de caractères
STR_FIND
Recherche un caractère ou une chaîne de
caractères dans une chaîne de caractères.
STR_FIND_REVERSE
Recherche un caractère ou une chaîne de
caractères dans une chaîne de caractères. La
recherche commence à la fin de la chaîne de
caractères à rechercher.
STR_LC
Transforme toutes les majuscules d'une chaîne de
caractères en minuscules
STR_LENGTH
Détermine la longueur d'une chaîne de caractères
39
40
Chapter 2 Scripts - Liste alphabétique
STR_LNG
Détermine la longueur d'une chaîne de caractères
STR_LTRIM
Supprime les espaces qui figurent au début d'une
chaîne de caractères
STR_MATCH
Compare deux chaînes de caractères
STR_PAD
Elargir une chaîne de caractères à une longueur
définie.
STR_REVERSE
Inverse l'ordre des caractères d'une chaîne
STR_RTRIM
Supprime les espaces qui figurent à la fin d'une
chaîne de caractères
STR_SPLIT
Séparer la chaîne de caractères en plusieurs parties
à l'aide d'un séparateur.
STR_SUBSTITUTE
Remplace un caractère ou une chaîne de
caractères dans une chaîne
STR_SUBSTITUTE_VAR
Remplace le nom de Variables de scripts par leur
valeur.
STR_TRIM
Supprime les espaces qui figurent au début et à la
fin d'une chaîne de caractères
STR_UC
Transforme toutes les minuscules d'une chaîne de
caractères en majuscules
SUB
Exécute une soustraction
SUB_DAYS
Soustrait des jours à une date indiquée
SUB_PERIOD
Soustrait une période à une date indiquée
SUB_TIME
Soustrait une heure à une autre
SUB_TIMESTAMP
Soustrait une heure d'une marque horaire
SUBSTR
Copie les caractères d'une chaîne de caractères
SYS_ACT_CLIENT
Indique le numéro du Client actuel
&$CLIENT#
SYS_ACT_CLIENT_
TEXT
Indique le texte du Client actuel
&$CLIENT_DESC#
SYS_ACT_HOST
Détermine le nom de l'hôte
SYS_ACT_JP
Détermine si une tâche a été activée dans un
Workflow.
&$IN_
PROCESSFLOW#
SYS_ACT_ME_NAME
Indique le nom de l'objet considéré
&$NAME#
SYS_ACT_ME_NR
Indique le numéro courant (RunID) de l'objet
considéré
&$RUNID#
SYS_ACT_ME_TYPE
Indique le type de l'objet considéré
&$OBJECT_
TYPE#
SYS_ACT_PARENT_
NAME
Indique le nom de la Tâche supérieure
&$ACTIVATOR#
&$PROCESSOR#
SYS_ACT_PARENT_NR
Indique le numéro courant (RunID) de la Tâche
supérieure
&$ACTIVATOR_
RUNID#
&$PROCESSOR_
RUNID#
Automation Engine
41
SYS_ACT_PARENT_
TYPE
Indique le type d'objet de la Tâche supérieure
&$ACTIVATOR_
RUNID#
&$PROCESSOR_
RUNID#
SYS_ACT_PREV_NAME
Indique le nom de la Tâche précédente dans un
Workflow
SYS_ACT_PREV_NR
Indique le numéro courant (RunID) de la Tâche
précédente dans un Workflow
SYS_ACT_PTTYP
Indique le type de partenaire de l'Utilisateur
&$PARTNER_
TYPE#
SYS_ACT_RESTART
Détermine si l'objet a été activé en mode reprise
&$RESTARTED#
SYS_ACT_RESTART_
COUNT
Indique le nombre de reprises de Tâches de
Workflow qui sont exécutées par l'instruction
RESTART TASK (Post-conditions)
&$RESTART_
COUNT#
SYS_ACT_RESTART_
ME_NR
Indique le numéro courant (RunID) de l'objet activé
en mode de reprise
&$RESTART_
RUNID#
SYS_ACT_TOP_NAME
Indique le nom du Workflow de plus haut niveau
&$TOP_
PROCESSFLOW_
NAME#
SYS_ACT_TOP_NR
Détermine le numéro d'exécution (RunID) du
Workflow de plus haut niveau
&$TOP_
PROCESSFLOW_
RUNID#
SYS_ACT_USERID
Indique l'ID Utilisateur sous lequel le Job est
exécuté
SYS_ACTIVE_COUNT
Détermine le nombre d'objets actifs
SYS_BUSY_01
Indique l'utilisation en pourcentage d'UC4
Automation Engine pendant la dernière minute.
SYS_BUSY_10
Indique l'utilisation en pourcentage d'UC4
Automation Engine pendant les 10 dernières
minutes.
SYS_BUSY_60
Indique l'utilisation en pourcentage d'UC4
Automation Engine pendant la dernière heure.
SYS_DATE
Détermine la date du jour actuelle en vue du
lancement du traitement de script
&$DATE_format#
SYS_DATE_PHYSICAL
Détermine la date du jour actuelle
&$PHYS_DATE_
format#
SYS_HOST_ALIVE
Vérifie qu'un hôte particulier est actif
SYS_INFO
Lit des informations sur l'ensemble du système
UC4
SYS_LAST_ERR_INS
Indique la partie Variable du message de la dernière
erreur survenue
SYS_LAST_ERR_NR
Renvoie le numéro de la dernière erreur survenue
SYS_LAST_ERR_
SYSTXT
Détermine le texte d'erreur du système
d'exploitation pour la dernière erreur survenue
42
Chapter 2 Scripts - Liste alphabétique
SYS_LAST_RESTART_
POINT
Indique la désignation du point de reprise précédent
dans le script
SYS_LAST_RESTART_
TEXT
Indique le texte du point de reprise précédent dans
le script
SYS_LDATE
Détermine la date logique
&$LDATE_format#
SYS_RESTART_POINT
Indique le point de reprise utilisé pour l'exécution de
l'objet
&$RESTART_
POINT#
SYS_SERVER_ALIVE
Vérifie qu'un processus Serveur particulier est actif
SYS_SNMP_ACTIVE
Vérifie que la connexion SNMP (Simple Network
Management Protocol) d'UC4 est active
SYS_STATE_ACTIVE
Vérifie qu'un objet est déjà actif
SYS_STATE_JOB_
ACTIVE
Vérifie qu'un Job est déjà actif
SYS_STATE_JOBS_IN_
GROUP
Détermine le nombre de Jobs enregistrés en attente
dans des Groupes
&$SNMP_
ACTIVE#
SYS_STATE_JP_ACTIVE Vérifie si un Workflow est déjà actif
SYS_TIME
Détermine l'heure du jour actuelle en vue du
lancement du traitement de script
&$TIME_format#
SYS_TIME_PHYSICAL
Détermine l'heure du jour actuelle
&$PHYS_TIME_
format#
SYS_TIMESTAMP_
PHYSICAL
Indique la date et l'heure actuelles
SYS_USER_ALIVE
Vérifie que l'Utilisateur est connecté à UC4 via une
Interface Utilisateur
SYS_USER_DEP
Indique le département de l'Utilisateur qui a démarré &$DEPARTMENT#
la Tâche
SYS_USER_LANGUAGE
Indique la langue dans laquelle le Serveur produit
les fichiers log
&$SYS_
LANGUAGE#
SYS_USER_LNAME
Indique le nom et le prénom de l'Utilisateur qui a
démarré la Tâche
&$USER_FL#
SYS_USER_NAME
Indique le nom de l'Utilisateur qui a démarré la
Tâche
&$USER#
TOGGLE_OBJECT_
STATUS
Arrête ou démarre le traitement automatique de
certains types d'objet
TOGGLE_SYSTEM_
STATUS
Arrête ou démarre le traitement automatique de
l'intégralité d'un Client
UC_CRLF
Indique un retour à la ligne
VALID_CALE
Vérifie qu'une date est contenue dans un Calendrier
VALID_DATE
Vérifie qu'une date est valide
VALID_TIME
Vérifier qu'une heure est valide
WEEK_NR
Indique la semaine calendaire à laquelle une date
appartient
Automation Engine
WEEKDAY_NR
Indique sous la forme d'un chiffre le jour de la
semaine correspondant à la date
WEEKDAY_XX
Renvoie sous la forme d'une abréviation le jour de la
semaine correspondant à la date
XML_BEAUTIFY
Prépare le style d'affichage de la structure d'un
élément
XML_GET_ATTRIBUTE
Indique la valeur d'un attribut
XML_GET_CHILD_
COUNT
Détermine le nombre de sous-éléments d'un
élément
XML_GET_FIRST_CHILD
Détermine le premier sous-élément d'un élément
XML_GET_LAST_CHILD
Détermine le dernier sous-élément d'un élément
XML_GET_
NEXTSIBLING
Détermine l'élément suivant
XML_GET_NODE_NAME
Indique le nom d'un élément
XML_GET_NODE_TEXT
Indique le texte d'un élément
XML_OPEN
Ouvre un document XML en vue du traitement
XML_PRINTINTOFILE
Affiche le document XML dans un fichier
XML_SELECT_NODE
Détermine un élément quelconque
YEAR_9999
Extrait l'année d'une date donnée
43
44
Chapter 3 Organisation fonctionnelle
3 Organisation fonctionnelle
3.1 Scripts - Organisation fonctionnelle
La vue d'ensemble suivante présente le script UC4 organisé selon ses domaines de fonction.
Modification d'objets
[Modification d'objets] [Activation d'objets] [Lecture ou modification d'objets] [Elaboration et traitement des
scripts] [Traitement des erreurs et messages] [Données d'activation] [Données Utilisateur] [Séquences de
données] [Traitement d'Evènement] [Statuts et utilisation du système] [Date et heure] [Calcul] [Chaînes]
Elément de script
Description
:REGISTER_
OUTPUTFILE
Enregistre un fichier comme résultat externe de Job
CREATE_OBJECT
Crée un objet (uniquement Groupe Calendrier, Login et Variable)
EXPORT
Exporte des objets dans un fichier XML
IMPORT
Importe des objets d'un fichier XML
MODIFY_OBJECT
Modifie un objet disponible (uniquement Groupe Calendrier, Login et Variable)
MOVE_OBJECT
Déplace un objet dans un dossier
REMOVE_OBJECT
Supprime un objet disponible
Activation d'objets
[Modification d'objets] [Activation d'objets] [Lecture ou modification d'objets] [Elaboration et traitement des
scripts] [Traitement des erreurs et messages] [Données d'activation] [Données Utilisateur] [Séquences de
données] [Traitement d'Evènement] [Statuts et utilisation du système] [Date et heure] [Calcul] [Chaînes]
Elément de script
Description
:BEGINREAD...
:ENDREAD
Débute et termine une boîte de dialogue destinée aux questions posées à
l'Utilisateur
:PRINT
Affiche du texte dans une boîte de dialogue destinée aux questions posées à
l'Utilisateur ou dans le protocole d'activation d'un objet
:PUT_READ_BUFFER Enregistre le nom et le contenu d'une Variable de script dans un cache
:PUT_PROMPT_
BUFFER
Enregistre le nom et le contenu d'une Variable de script dans un cache
:READ
Invite l'Utilisateur à saisir des données dans la boîte de dialogue
ACTIVATE_UC_
OBJECT
Active un objet
AUTOFORECAST
Calcule les données de simulation pour des activités futures.
CANCEL_UC_
OBJECT
Interrompt un objet activé
Automation Engine
FORECAST_OBJECT
Crée une simulation pour l'objet indiqué
FORECAST_TASK
Crée une simulation pour la Tâche courante
45
RERUN_UC_OBJECT Poursuite d'un Workflow spécifique.
RESTART_UC_
OBJECT
Répète l'exécution d'une Tâche
ROLLBACK_UC_
OBJECT
Exécuter un rollback d'une tâche définie.
SYS_ACTIVE_
COUNT
Détermine le nombre d'objets actifs
SYS_STATE_ACTIVE
Vérifie qu'un objet est déjà actif
SYS_STATE_JOB_
ACTIVE
Vérifie qu'un Job est déjà actif
SYS_STATE_JOBS_
IN_GROUP
Détermine le nombre de Jobs enregistrés en attente dans des Groupes
SYS_STATE_JP_
ACTIVE
Vérifie si un Workflow est déjà actif
TOGGLE_OBJECT_
STATUS
Arrête ou démarre le traitement automatique de certains types d'objet
Lecture ou modification d'objets
[Modification d'objets] [Activation d'objets] [Lecture ou modification d'objets] [Elaboration et traitement des
scripts] [Traitement des erreurs et messages] [Données d'activation] [Données Utilisateur] [Séquences de
données] [Traitement d'Evènement] [Statuts et utilisation du système] [Date et heure] [Calcul] [Chaînes]
Elément de script
Description
:ADD_ATT
Ajoute des destinataires à un objet Alerte pendant l'exécution
:ADD_COMMENT
Ajoute un commentaire à une Tâche
:ATTACH_SYNC
Attribue un objet Sync à une Tâche
:DELETE_VAR
Supprime une ou toutes les valeurs d'un objet Variable statique
:MODIFY_STATE
Modifie le code retour ou le texte de statut d'un Job une fois ce dernier terminé
:PUT_ATT
Définit ou modifie des attributs d'objets
:PUT_ATT_APPEND
Etend le texte du message de l'Alerte pendant l'exécution
:PUT_VAR
Enregistre les valeurs dans un objet Variable statique
:PUT_VAR_COL
Enregistre une valeur dans une colonne spécifique d'un objet Variable
statique
:REMOVE_ATT
Supprime des destinataires d'un objet Alerte pendant l'exécution
:REPLACE_
STRUCTURE
Remplace la structure d'un Workflow lors de son activation par la structure
d'un autre Workflow.
:SET_CALE
Attribue une date à un Calendrier d'un Groupe Calendrier
:SET_CONDITION
Définit l'heure de début au plus tôt dans les Workflows.
46
Chapter 3 Organisation fonctionnelle
:XML_CLOSE
Ferme un document XML
GET_ATT
Indique la valeur des attributs d'un objet pendant la génération
GET_ATT_PLAIN
Indique la valeur des attributs d'une Tâche pendant la génération sans
suppression des Variables.
GET_ATT_SUBSTR
Indique une partie du texte du message de l'Alerte
GET_CONDITION
Indique l'heure de début la plus ancienne des Workflows.
GET_LOGIN
Lit les informations à partir d'objets Login.
GET_OBJECT_TYPE
Indique le type d'objet de la Tâche
GET_OH_IDNR
Indique le numéro interne d'un objet.
GET_PUBLISHED_
VALUE
Déterminer la valeur des Variables d'Objet et PromptSet d'une tâche définie.
GET_STATISTIC_
DETAIL
Détermine les détails à partir d'un enregistrement statistique d'un objet
activable
GET_SYNC
Lit la valeur ou le statut actuel d'un objet Sync
GET_VAR
Indique la valeur d'un objet Variable.
MODIFY_TASK
Modifie les Workflows en cours
MODIFY_UC_
OBJECT
Modifie l'attribut d'un objet activé
SET_SYNC
Exécute l'action définie d'un objet Sync
XML_BEAUTIFY
Prépare le style d'affichage de la structure d'un élément
XML_GET_
ATTRIBUTE
Indique la valeur d'un attribut
XML_GET_CHILD_
COUNT
Détermine le nombre de sous-éléments d'un élément
XML_GET_FIRST_
CHILD
Détermine le premier sous-élément d'un élément
XML_GET_LAST_
CHILD
Détermine le dernier sous-élément d'un élément
XML_GET_
NEXTSIBLING
Détermine l'élément suivant
XML_GET_NODE_
NAME
Indique le nom d'un élément
XML_GET_NODE_
TEXT
Indique le texte d'un élément
XML_OPEN
Ouvre un document XML en vue du traitement
XML_PRINTINTOFILE
Affiche le document XML dans un fichier
XML_SELECT_NODE
Détermine un élément quelconque
Automation Engine
Elaboration et traitement des scripts
[Modification d'objets] [Activation d'objets] [Lecture ou modification d'objets] [Elaboration et traitement des
scripts] [Traitement des erreurs et messages] [Données d'activation] [Données Utilisateur] [Séquences de
données] [Traitement d'Evènement] [Statuts et utilisation du système] [Date et heure] [Calcul] [Chaînes]
Elément de script
Description
:CONST
Crée une Variable de script comme constante avec une valeur définie.
:DATA
Déclaration explicite d'une ligne DATA dans le script
:DEFINE
Création d'une Variable de script avec un type spécifique de données.
:FILL
Enregistre plusieurs valeurs dans un Tableau de script.
:EXT_REPORT_OFF
Désactive la journalisation du script d'une Tâche
:EXT_REPORT_ON
Active la journalisation du script d'une Tâche
:GENERATE
Contrôle la gestion des lignes de script pendant le traitement d'un script
:IF... :ELSE... :ENDIF
Ramification en fonction de conditions
:INCLUDE
Associe un objet Include au script actuel
:INC_SCRIPT
Associe un script à un autre script du même objet
:JCL_CONCAT_
CHAR
Forme des lignes JCL jusqu'à une taille maximale de 2 Ko
:JCL_SUBSTITUTE
Remplace une chaîne de caractères du JCL par une autre chaîne de
caractères
:PSET
Attribue une valeur à une Variable d'objet.
:PUBLISH
Définir les Variables de script et les tableaux comme Variables d'objet.
:RESTART
Définit des points de redémarrage dans un objet
:RSET
Attribue une valeur à une Variable de script et l'enregistre dans le rapport
d'activation
:SET
Attribue une valeur à des Variables de script
:SET_SCRIPT_VAR
Définit les valeurs des Variables de script par accès indirect
:SWITCH ... :CASE ...
:ENDSWITCH
Vérifie si la valeur d'une Variable correspond à certaines valeurs et exécute
différentes actions en fonction de cela.
:WAIT
Suspend le traitement du script pour une période donnée
:WHILE...
:ENDWHILE
Boucle permettant de répéter l'exécution de parties du script
FIND
Recherche un Tableau de script et retourne l'Index correspondant.
GET_SCRIPT_VAR
Indique les valeurs des Variables de script par accès indirect
LENGTH
Détermine la longueur d'un Tableau de script.
Traitement des erreurs et messages
[Modification d'objets] [Activation d'objets] [Lecture ou modification d'objets] [Elaboration et traitement des
scripts] [Traitement des erreurs et messages] [Données d'activation] [Données Utilisateur] [Séquences de
données] [Traitement d'Evènement] [Statuts et utilisation du système] [Date et heure] [Calcul] [Chaînes]
47
48
Chapter 3 Organisation fonctionnelle
Elément de script
Description
:EXIT
Termine le traitement du script avec un code retour
:ON_ERROR
Définit des réactions associées à certaines erreurs ou certains messages de
script
:SEND_MSG
Envoie des messages aux Utilisateurs de l'Interface Utilisateur
:SEND_SNMP_TRAP
Envoie une interruption SNMP
:SET_LAST_ERR
Définit le numéro et le texte de l'erreur
:STOP
Interrompt l'activation d'un objet et affiche éventuellement un message
d'erreur
GET_MSG_TXT
Détermine le texte du message de la dernière erreur survenue
GET_MSG_TYPE
Indique le type d'un numéro de message.
SEND_MAIL
Envoie des e-mails à un Utilisateur
SYS_LAST_ERR_INS
Indique la partie Variable du message de la dernière erreur survenue
SYS_LAST_ERR_NR
Renvoie le numéro de la dernière erreur survenue
SYS_LAST_ERR_
SYSTXT
Détermine le texte d'erreur du système d'exploitation pour la dernière erreur
survenue
Données d'activation
[Modification d'objets] [Activation d'objets] [Lecture ou modification d'objets] [Elaboration et traitement des
scripts] [Traitement des erreurs et messages] [Données d'activation] [Données Utilisateur] [Séquences de
données] [Traitement d'Evènement] [Statuts et utilisation du système] [Date et heure] [Calcul] [Chaînes]
Elément de script
Description
Variable
prédéfinie
GET_PARENT_NAME
Renvoie le nom de la Tâche supérieure
(parent)
GET_PARENT_NR
Renvoie le numéro courant (RunID) de la
Tâche supérieure (parent)
GET_PARENT_TYPE
Renvoie le type d'objet de la Tâche
supérieure (parent)
GET_UC_OBJECT_NR
Indique le RunID d'un objet activé
GET_UC_OBJECT_STATUS
Indique le statut d'un objet activé
SYS_ACT_HOST
Détermine le nom de l'hôte
SYS_ACT_JP
Détermine si une tâche a été activée
dans un Workflow.
&$IN_
PROCESSFLOW#
SYS_ACT_ME_NAME
Indique le nom de l'objet considéré
&$NAME#
SYS_ACT_ME_NR
Indique le numéro courant (RunID) de
l'objet considéré
&$RUNID#
SYS_ACT_ME_TYPE
Indique le type de l'objet considéré
&$OBJECT_
TYPE#
Automation Engine
49
SYS_ACT_PARENT_NAME
Indique le nom de la Tâche supérieure
&$ACTIVATOR#
&$PROCESSOR#
SYS_ACT_PARENT_NR
Indique le numéro courant (RunID) de la
Tâche supérieure
&$ACTIVATOR_
RUNID#
&$PROCESSOR_
RUNID#
SYS_ACT_PARENT_TYPE
Indique le type d'objet de la Tâche
supérieure
&$ACTIVATOR_
RUNID#
&$PROCESSOR_
RUNID#
SYS_ACT_PREV_NAME
Indique le nom de la Tâche précédente
dans un Workflow
SYS_ACT_PREV_NR
Indique le numéro courant (RunID) de la
Tâche précédente dans un Workflow
SYS_ACT_PTTYP
Indique le type de partenaire de
l'Utilisateur
&$PARTNER_
TYPE#
SYS_ACT_RESTART
Détermine si l'objet a été activé en mode
reprise
&$RESTARTED#
SYS_ACT_RESTART_COUNT
Indique le nombre de reprises de Tâches
de Workflow qui sont exécutées par
l'instruction RESTART TASK (Postconditions)
&$RESTART_
COUNT#
SYS_ACT_RESTART_ME_NR
Indique le numéro courant (RunID) de
l'objet activé en mode de reprise
&$RESTART_
RUNID#
SYS_ACT_TOP_NAME
Indique le nom du Workflow de plus haut
niveau
&$TOP_
PROCESSFLOW_
NAME#
SYS_ACT_TOP_NR
Détermine le numéro d'exécution (RunID)
du Workflow de plus haut niveau
&$TOP_
PROCESSFLOW_
RUNID#
SYS_ACT_USERID
Indique l'ID Utilisateur sous lequel le Job
est exécuté
SYS_LAST_RESTART_POINT
Indique la désignation du point de reprise
précédent dans le script
SYS_LAST_RESTART_TEXT
Indique le texte du point de reprise
précédent dans le script
SYS_RESTART_POINT
Indique le point de reprise utilisé pour
l'exécution de l'objet
&$RESTART_
POINT#
Données Utilisateur
[Modification d'objets] [Activation d'objets] [Lecture ou modification d'objets] [Elaboration et traitement des
scripts] [Traitement des erreurs et messages] [Données d'activation] [Données Utilisateur] [Séquences de
données] [Traitement d'Evènement] [Statuts et utilisation du système] [Date et heure] [Calcul] [Chaînes]
50
Chapter 3 Organisation fonctionnelle
Elément de script
Description
Variable
prédéfinie
IS_GROUP_MEMBER
Vérifie l'appartenance d'un Utilisateur à un
Groupe Utilisateur
SYS_ACT_CLIENT
Indique le numéro du Client actuel
&$CLIENT#
SYS_ACT_CLIENT_TEXT
Indique le texte du Client actuel
&$CLIENT_DESC#
SYS_USER_ALIVE
Vérifie que l'Utilisateur est connecté à UC4 via
une Interface Utilisateur
SYS_USER_DEP
Indique le département de l'Utilisateur qui a
démarré la Tâche
&$DEPARTMENT#
SYS_USER_LNAME
Indique le nom et le prénom de l'Utilisateur qui a
démarré la Tâche
&$USER_FL#
SYS_USER_NAME
Indique le nom de l'Utilisateur qui a démarré la
Tâche
&$USER#
Séquences de données
[Modification d'objets] [Activation d'objets] [Lecture ou modification d'objets] [Elaboration et traitement des
scripts] [Traitement des erreurs et messages] [Données d'activation] [Données Utilisateur] [Séquences de
données] [Traitement d'Evènement] [Statuts et utilisation du système] [Date et heure] [Calcul] [Chaînes]
Elément de script
Description
:CLOSE_PROCESS
Supprime une séquence de données au sein d'un script
:PROCESS... :TERM_
PROCESS...
:ENDPROCESS
Boucle pour le traitement par lignes d'une séquence de données, par exemple
pour les fichiers séquentiels ou les résultats de commande
CREATE_PROCESS
Crée une nouvelle séquence de données.
GET_PROCESS_
INFO
Déterminer des informations d'une séquence de données.
GET_PROCESS_LINE Détermine le contenu actuel des lignes d'une séquence de données
LOAD_PROCESS
Charge une séquence de données enregistrée.
PREP_PROCESS
Exécute avec l'aide d'objets Job spécifiques (Jobs d'Evènement) des
commandes sur un ordinateur et fournit la sortie de console comme liste
interne (séquence de données) qui peut être utilisée pour des traitements
ultérieurs.
PREP_PROCESS_
AGENTGROUP
Détermine les Agents d'un objet Groupe Agent grâce à des critères de
sélection et met le résultat à disposition comme liste interne (séquence de
données) pour un traitement ultérieur.
PREP_PROCESS_
COMMENTS
Détermine les paramètres de Filtre de l'Marque horaire, de l'Utilisateur et du
Texte des commentaires de Tâches et met le résultat à disposition comme
liste interne (séquence de données) pour un traitement ultérieur.
PREP_PROCESS_
FILE
Détermine grâce aux critères de filtrage par ligne le contenu d'un fichier texte
qui se trouve sur un ordinateur indiqué et met le résultat à disposition comme
liste interne (séquence de données) pour un traitement ultérieur.
Automation Engine
PREP_PROCESS_
FILENAME
Détermine une liste avec le nom des fichiers qui se trouvent sur l'ordinateur
indiqué et met cette dernière à disposition comme liste interne (séquence de
données) pour un traitement ultérieur.
PREP_PROCESS_
REPORT
Détermine les lignes de rapport des objets activables à l'aide de critères de
filtrage et met le résultat à disposition comme liste interne (séquence de
données) pour un traitement ultérieur.
PREP_PROCESS_
REPORTLIST
Détermine la liste de sorties enregistrées des Jobs déjà effectués et met le
résultat à disposition comme liste interne (séquence de données) pour un
traitement ultérieur.
PREP_PROCESS_
VAR
Détermine une liste de valeurs d'un objet Variable à l'aide de critères de
sélection et met le résultat à disposition comme liste interne (séquence de
données) pour un traitement ultérieur.
51
PUT_PROCESS_LINE Ajoute une ligne à une séquence de données spécifique.
SAVE_PROCESS
Enregistre une séquence de données spécifique.
Traitement d'Evènement
[Modification d'objets] [Activation d'objets] [Lecture ou modification d'objets] [Elaboration et traitement des
scripts] [Traitement des erreurs et messages] [Données d'activation] [Données Utilisateur] [Séquences de
données] [Traitement d'Evènement] [Statuts et utilisation du système] [Date et heure] [Calcul] [Chaînes]
Elément de script
Description
GET_CONSOLE
Lit les données de message de l'Evènement de console survenu
GET_EVENT_INFO
Lit des données des Evènements de console, de fichier ou de base de
données survenus
GET_FILESYSTEM
Détermine les différentes valeurs de système de fichiers à partir d'une
machine à l'emplacement correspondant au chemin indiqué.
GET_WIN_EVENT
Détermine des entrées dans le protocole système, de sécurité et d'application
de Windows NT, 2000 ou XP lorsqu'un Evènement se produit
3.1.1 Statuts et utilisation du système
[Modification d'objets] [Activation d'objets] [Lecture ou modification d'objets] [Elaboration et traitement des
scripts] [Traitement des erreurs et messages] [Données d'activation] [Données Utilisateur] [Séquences de
données] [Traitement d'Evènement] [Statuts et utilisation du système] [Date et heure] [Calcul] [Chaînes]
Elément de script
Description
:DISCONNECT
Déconnecte du système UC4
:SET_UC_SETTING
Modifie les paramètres système au cours de
l'exécution
:SHUTDOWN
Ferme un système UC4
Variable
prédéfinie
52
Chapter 3 Organisation fonctionnelle
:TERMINATE
Met fin à un Agent, un processus de travail ou de
communication
CHANGE_LOGGING
Changement du fichier log.
GET_UC_SERVER_NAME
Détermine le nom du processus de travail dans lequel
le script est exécuté
GET_UC_SETTING
Lit les paramètres système actuels
GET_UC_SYSTEM_NAME
Détermine le nom du système UC4
ILM
Contrôle la fonctionnalité ILM
MODIFY_SYSTEM
Exécute des actions ServiceManager ou des
modifications de Queue.
SYS_BUSY_01
Indique l'utilisation en pourcentage d'UC4 Automation
Engine pendant la dernière minute.
SYS_BUSY_10
Indique l'utilisation en pourcentage d'UC4 Automation
Engine pendant les 10 dernières minutes.
SYS_BUSY_60
Indique l'utilisation en pourcentage d'UC4 Automation
Engine pendant la dernière heure.
SYS_HOST_ALIVE
Vérifie qu'un hôte particulier est actif
SYS_INFO
Lit des informations sur l'ensemble du système UC4
SYS_SERVER_ALIVE
Vérifie qu'un processus Serveur particulier est actif
SYS_SNMP_ACTIVE
Vérifie que la connexion SNMP (Simple Network
Management Protocol) d'UC4 est active
&$SNMP_
ACTIVE#
SYS_USER_LANGUAGE
Indique la langue dans laquelle le Serveur produit les
fichiers log
&$SYS_
LANGUAGE#
TOGGLE_SYSTEM_STATUS
Arrête ou démarre le traitement automatique de
l'intégralité d'un Client
&$SYSTEM#
Date et heure
[Modification d'objets] [Activation d'objets] [Lecture ou modification d'objets] [Elaboration et traitement des
scripts] [Traitement des erreurs et messages] [Données d'activation] [Données Utilisateur] [Séquences de
données] [Traitement d'Evènement] [Statuts et utilisation du système] [Date et heure] [Calcul] [Chaînes]
Elément de script
Description
ADD_DAYS
Ajoute des jours à une date indiquée
ADD_PERIOD
Ajoute une période à une date indiquée
ADD_TIME
Ajoute une heure à une autre
ADD_TIMESTAMP
Ajoute l'heure à une marque horaire
CALE_LOOK_AHEAD
Détermine la date suivante en fonction des conditions
de calendrier.
CONV_DATE
Change le format d'une date
Variable
prédéfinie
Automation Engine
53
CONV_TIMESTAMP
Convertit la date et l'heure dans un autre Fuseau
horaire
DAY_OF_YEAR
Indique le jour actuel de l'année
DIFF_DATE
Détermine la différence (en jours) entre deux dates
DIFF_TIME
Détermine la différence entre deux heures
FIRST_OF_PERIOD
Détermine le premier jour de la période pour la date
indiquée
LAST_OF_PERIOD
Détermine le dernier jour de la période pour la date
indiquée
SUB_DAYS
Soustrait des jours à une date indiquée
SUB_PERIOD
Soustrait une période à une date indiquée
SUB_TIME
Soustrait une heure à une autre
SUB_TIMESTAMP
Soustrait une heure d'une marque horaire
SYS_DATE
Détermine la date du jour actuelle en vue du
lancement du traitement de script
&$DATE_
format#
SYS_DATE_PHYSICAL
Détermine la date du jour actuelle
&$PHYS_
DATE_
format#
SYS_LDATE
Détermine la date logique
&$LDATE_
format#
SYS_TIME
Détermine l'heure du jour actuelle en vue du
lancement du traitement de script
&$TIME_
format#
SYS_TIME_PHYSICAL
Détermine l'heure du jour actuelle
&$PHYS_
TIME_
format#
SYS_TIMESTAMP_PHYSICAL
Indique la date et l'heure actuelles
VALID_CALE
Vérifie qu'une date est contenue dans un Calendrier
VALID_DATE
Vérifie qu'une date est valide
VALID_TIME
Vérifier qu'une heure est valide
WEEK_NR
Indique la semaine calendaire à laquelle une date
appartient
WEEKDAY_NR
Indique sous la forme d'un chiffre le jour de la
semaine correspondant à la date
WEEKDAY_XX
Renvoie sous la forme d'une abréviation le jour de la
semaine correspondant à la date
YEAR_9999
Extrait l'année d'une date donnée
Calcul
[Modification d'objets] [Activation d'objets] [Lecture ou modification d'objets] [Elaboration et traitement des
scripts] [Traitement des erreurs et messages] [Données d'activation] [Données Utilisateur] [Séquences de
données] [Traitement d'Evènement] [Statuts et utilisation du système] [Date et heure] [Calcul] [Chaînes]
54
Chapter 3 Organisation fonctionnelle
Elément de script
Description
ADD
Exécute une addition
DIV
Exécute une division
GET_BIT
Vérifie qu'un bit particulier est défini dans un champ de bit
MOD
Indique le reste d'une division
MULT
Exécute une multiplication
RANDOM
Génère des nombres aléatoires
SUB
Exécute une soustraction
Chaînes
[Modification d'objets] [Activation d'objets] [Lecture ou modification d'objets] [Elaboration et traitement des
scripts] [Traitement des erreurs et messages] [Données d'activation] [Données Utilisateur] [Séquences de
données] [Traitement d'Evènement] [Statuts et utilisation du système] [Date et heure] [Calcul] [Chaînes]
Elément de script
Description
ALPHA2RUNNR
Convertit le nom d'un Job ou d'un fichier de rapport en RunID
CONV_LC ou STR_LC
Transforme toutes les majuscules d'une chaîne de caractères en minuscules
CONV_UC ou STR_
UC
Transforme toutes les minuscules d'une chaîne de caractères en majuscules
CONVERT
Convertit le type de données d'une valeur
FORMAT
Modifie le formatage d'un nombre
HEX
Convertit une chaîne de caractères au format hexadécimal
ISNUMERIC
Vérifie qu'une chaîne de caractères est numérique
MID, STR_CUT ou
SUBSTR
Copie les caractères d'une chaîne de caractères
RUNNR2ALPHA
Convertit un RunID en nom de fichier correspondant
STR_CAT
Lie deux chaînes de caractères à une troisième
STR_FIND
Recherche un caractère ou une chaîne de caractères dans une chaîne de
caractères.
STR_FIND_
REVERSE
Recherche un caractère ou une chaîne de caractères dans une chaîne de
caractères. La recherche commence à la fin de la chaîne de caractères à
rechercher.
STR_LENGTH ou
STR_LNG
Détermine la longueur d'une chaîne de caractères
STR_LTRIM
Supprime les espaces qui figurent au début d'une chaîne de caractères
STR_MATCH
Compare deux chaînes de caractères
STR_PAD
Elargir une chaîne de caractères à une longueur définie.
STR_REVERSE
Inverse l'ordre des caractères d'une chaîne
STR_RTRIM
Supprime les espaces qui figurent à la fin d'une chaîne de caractères
Automation Engine
STR_SPLIT
Séparer la chaîne de caractères en plusieurs parties à l'aide d'un séparateur.
STR_SUBSTITUTE
Remplace un caractère ou une chaîne de caractères dans une chaîne
STR_SUBSTITUTE_
VAR
Remplace le nom de Variables de scripts par leur valeur.
STR_TRIM
Supprime les espaces qui figurent au début et à la fin d'une chaîne de
caractères
UC_CRLF
Indique un retour à la ligne
55
3.2 Modification d'objets
3.2.1 :REGISTER_OUTPUTFILE
Instruction de script : Enregistre un fichier comme résultat externe de Job
Syntaxe
:REGISTER_OUTPUTFILE Fichier, Login Utilisateur
Elément de syntaxe
Description/format
Fichier
Chemin et nom entièrement qualifiés du fichier qui doit être enregistré comme
résultat de Job.
Les caractères génériques ne sont pas autorisés ! Le chemin absolu doit
toujours être indiqué!
Format : Littéral de script
Login Utilisateur
Utiliser le Login Utilisateur.
Valeurs autorisées : "Y" ou "N"
Format : Littéral de script
Remarques
Cette instruction de script peut être utilisée uniquement dans l'onglet Script des Jobs UNIX et
Windows !
L'enregistrement de résultats externes comme résultat de Job est également possible via l'onglet
Résultat". La date/l'heure de l'enregistrement est toutefois différente : les fichiers de l'onglet Résultat
sont enregistrés dès le début de l'exécution du Job, que ce dernier ait pu créer le fichier ou non. Lors de
l'utilisation du script, le fichier indiqué est d'abord enregistré au moment de l'appel.
Le fichier indiqué doit se trouver sur l'ordinateur de l'Agent sur lequel le Job est exécuté ou être accessible
depuis cet ordinateur. Il est conseillé de n'indiquer que les fichiers qui sont générés par le Job.
Après l'exécution du Job, le fichier est listé dans le dialogue Rapport de l'onglet "Répertoire" en plus du
résultat de Job standard. Il peut être ouvert ou enregistré ici directement via l'Interface Utilisateur.
56
Chapter 3 Organisation fonctionnelle
Exemple
Dans l'exemple de script d'un Job Windows ci-dessous, la liste des fichiers du répertoire C:\temp est
enregistrée dans le fichier C:\temp\test.txt. Le système vérifie ensuite si la commande a pu être exécutée
correctement. Si c'est le cas, ce fichier est alors enregistré comme résultat de Job. Sinon, le Job est
interrompu.
dir C:\temp /S >> C:\temp\test.txt
@set retcode=%errorlevel% !
@if NOT %ERRORLEVEL% == 0 goto :retcode
:REGISTER_OUTPUTFILE"C:\temp\test.txt", "N"
Rubriques connexes :
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.2.2 CREATE_OBJECT
Fonction script : Crée un objet (uniquement Groupe Calendrier, Login et Variable).
Informations générales
l
l
l
l
La fonction de script permet de créer exclusivement des objets de type "Groupe Calendrier",
"Login" et "Variable" (uniquement statique).
L'instruction de script :ON_ERROR permet de définir la réaction en cas d'erreur. Comme
indiqué auparavant, vous pouvez l'analyser avec les fonctions de script pour traiter des erreurs. Par
défaut, le script continue à s'exécuter. Toutefois, vous avez également la possibilité de
l'interrompre.
Vous avez besoin d'un droit d'écriture sur les types d'objet Groupe Calendrier, Login et Variable
pour les créer.
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die UC4Datenbank geschrieben werden.
Groupe Calendrier
[Groupe Calendrier] [Login] [Variable]
Syntaxe
CREATE_OBJECT(type d'objet, nom d'objet, [dossier], [titre] )
Elément de syntaxe
Description/format
Type d'objet
Description courte du type d'objet.
Valeur autorisée : CALE
Automation Engine
Nom d'objet
Nom de l'objet.
Format : Littéral de script ou Variable de script
Dossier
Nom du dossier dans lequel l'objet doit être créé.
Format : Littéral de script ou Variable de script
Titre
Titre de l'objet.
Format : Littéral de script ou Variable de script
57
Codes retour
"0" - L'objet Groupe Calendrier a été créé.
"20644" - Un objet du même nom existe déjà.
"20710" - Le nom de l'objet contient au moins un caractère non autorisé.
Remarques
Un Groupe Calendrier est créé dans le dossier indiqué. Si ce paramètre n'est pas indiqué ou que le dossier
n'existe pas, l'objet est enregistré dans <défaut>.
Exemples
Dans le premier exemple, l'objet "AGENDA_ENTREPRISE2003" est créé dans <défaut>.
:SET &RET# = CREATE_OBJECT("CALE","AGENDA_ENTREPRISE2003",,"Agenda
d'entreprise pour 2003")
Login
[[Groupe Calendrier] [Login][Variable]
Syntaxe
CREATE_OBJECT(type d'objet, nom d'objet, [dossier], [titre] )
Elément de syntaxe
Description/format
Type d'objet
Description courte du type d'objet.
Valeur autorisée : LOGIN
Nom d'objet
Nom de l'objet.
Format : Littéral de script ou Variable de script
Dossier
Nom du dossier dans lequel l'objet doit être créé.
Format : Littéral de script ou Variable de script
Titre
Titre de l'objet.
Format : Littéral de script ou Variable de script
Codes retour
"0" - L'objet Login a été créé.
"20644" - Un objet du même nom existe déjà.
"20710" - Le nom de l'objet contient au moins un caractère non autorisé.
58
Chapter 3 Organisation fonctionnelle
Remarques
Un objet Login est créé dans le dossier indiqué. Si ce paramètre n'est pas indiqué ou que le dossier
n'existe pas, l'objet est enregistré dans <défaut>.
Exemples
Dans le premier exemple, l'objet "LOGIN.DUPONT" est créé dans <défaut>.
:SET &RET# = CREATE_OBJECT("LOGIN","LOGIN.DUPONT",,"Logins standard")
Dans le deuxième exemple, un objet Login est créé dans le dossier "LOGIN_STD".
:SET &NOUVEAU# = CREATE_OBJECT("LOGIN","LOGIN.DUPONT","LOGIN_STD",)
Variable
[Groupe Calendrier] [Login] [Variable]
Syntaxe
CREATE_OBJECT(type d'objet, nom d'objet, [dossier], [titre], [traitement des erreurs], [type de
données], [validité] )
Elément de
syntaxe
Description/format
Type d'objet
Description courte du type d'objet.
Valeur autorisée : VARA
Nom d'objet
Nom de l'objet.
Format : Littéral de script ou Variable de script
Dossier
Nom du dossier dans lequel l'objet doit être créé.
Format : Littéral de script ou Variable de script
Titre
Titre de l'objet.
Format : Littéral de script ou Variable de script
Traitement
des erreurs
Traitement lorsque la variable ne contient pas de valeur pour le temps d'exécution.
Valeurs autorisées : "E" ou "I" (par défaut)
"E" = Un message d'erreur est émis.
"I" = La variable va être initialisée en fonction de son type.
Type de
données
Type de variable.
Valeurs autorisées : "String" (ou "C"), "Number" (ou "F"), "Timestamp" (ou "T"), "Time"
ou "Date" Valeurs autorisées: "C" (par défaut), "F" ou "T"
"String", "C"= Texte
"Number", "F" = Nombre
"Timestamp", "T" = Marque horaire
"Time" = Heure
"Date" = Date
Automation Engine
Validité
59
Plage de validité.
Valeurs autorisées : "*", "LIBRE" (par défaut), "HON", "JBN", "JPN", "JPS", "USN",
"USS"
"*" = Pas de clé
"FREI" = Au choix
"HON" = Hôte - pour chaque nom d'hôte
"JBN" = Tâche - pour chaque nom de Tâche
"JPN" = Nom de Workflow - pour chaque nom de Workflow
"JPS" = Session de Workflow - pour chaque activation de Workflow
"USN" = Utilisateur - pour chaque nom d'Utilisateur
"USS" = Session Utilisateur - pour chaque session utilisateur
Codes retour
"0" - L'objet Variable a été créé.
"20644" - Un objet du même nom existe déjà.
"20710" - Le nom de l'objet contient au moins un caractère non autorisé.
Remarques
Cette fonction de script permet de créer uniquement des objets Variable statiques. Pour obtenir des
informations complémentaires à ce sujet, voir la description de l'onglet Attributs des objets Variable.
Une variable est créée dans le dossier indiqué. Si ce paramètre n'est pas indiqué ou que le dossier n'existe
pas, l'objet est enregistré dans <défaut>. N'indiquez pas tous les paramètres facultatifs pour utiliser les
valeurs par défaut "Texte" (pour le type de données), "Index libre" (pour la plage de validité) et "Valeur
initiale" (pour Clé introuvable).
Exemple
L'exemple créé une variable dans laquelle le nombre de fichiers déterminé peut être enregistré.
:SET &RET# = CREATE_OBJECT
("VARA","OUTPUT.WEBHELP.VARA","VARIABLE/TEST","Nombre de fichiers de
l'aide","I","F","LIBRE")
Rubriques connexes :
Elément de script
Description
:ON_ERROR
Détermine les réactions associées à certaines erreurs ou certains messages
de script.
REMOVE_OBJECT
Supprime un objet disponible.
MODIFY_OBJECT
Modifie un objet disponible (uniquement Groupe Calendrier, Login et Variable).
MOVE_OBJECT
Déplace un objet dans un dossier.
ACTIVATE_UC_
OBJECT
Active un objet.
Script - Modifier les objets
Script - Corrections d'erreurs et messages
60
Chapter 3 Organisation fonctionnelle
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.2.3 EXPORT
Fonction script : Exporte les objets dans un fichier XML.
Syntaxe
EXPORT(Objet, fichier )
Elément de syntaxe
Description/format
Objet
Nom du ou des objets à exporter (avec des caractères génériques).
Format : Littéral de script ou Variable de script
Vous pouvez utiliser les caractères génériques "*" et "?". "*" signifie n'importe
quelle chaîne de caractères et "?" exactement un caractère.
Fichier
Nom du fichier avec chemin complet dans lequel les objets doivent être
exportés.
Format : Littéral de script ou Variable de script
Codes retour
"0" - L'exportation a réussi.
"20693" - L'objet n'existe pas.
"21723" - Le fichier cible existe et est protégé en écriture.
Remarques
La fonction de script vous permet d'exporter des objets dans un fichier XML indiqué.
La fonctionnalité d'importation et d'exportation n'est pas adaptée aux transports de masse ! Dans ces
cas, utilisez plutôt le Conteneur Transport UC4.
L'instruction de script :ON_ERROR permet de définir la réaction en cas d'exportation erronée. Vous
pouvez analyser l'erreur avec les fonctions de script pour le traitement des erreurs. Le traitement du script
se poursuit. Toutefois, vous avez également la possibilité de l'interrompre.
Avant le processus d'exportation, le système vérifie si le fichier existe déjà. Le cas échéant, il est
remplacé. S'il est protégé en écriture, l'exportation ne peut pas être exécutée.
L'exportation échoue lorsque l'Utilisateur ne possède pas le droit "Lire" (R) sur l'objet.
Vous trouverez des informations complémentaires sur le processus d'exportation dans le rapport
d'activation de l'objet réalisant l'exportation.
Dans un environnement UC4 partagé (les processus de travail sont exécutés sur plusieurs machines),
il est impossible de définir sur quelle machine l'exportation doit être exécutée ! Vous devez donc indiquez
le chemin UNC sous Windows. Attention : le serveur doit être exécuté sous un Utilisateur de domaine
correspondant pour accéder au nom UNC. Si un serveur UNIX est utilisé, le chemin absolu doit être
indiqué en langage UNIX. En outre, le système de fichier doit être accessible (NFS, commande mount),
Automation Engine
61
bien qu'il ne joue aucun rôle sur la machine où il se trouve. C'est le seul moyen de s'assurer que le fichier
XML souhaité est également utilisé.
Le script permet d'ouvrir les Transactions ouvertes dans la base de données UC4.
Exemple
Dans l'exemple suivant, tous les objets dont le nom commence par "GS.JOUR" sont exportés. La
désignation de l'objet, ainsi que le nom du dossier sont transmis à la fonction sous forme de Variable de
script.
:SET &OBJET# = "GS.JOUR*"
:SET &FICHIER# = "\\PCUC4\UC4global\EXPORT\uc4_export.xml"
:SET &RET#
=EXPORT(&OBJET#,&FICHIER#)
Exemple pour UNIX :
:SET &OBJET# = "GS.JOUR*"
:SET &FICHIER# = "/opt/UC4/import/uc4_export.xml"
:SET &RET#
=EXPORT(&OBJET#,&FICHIER#)
Rubriques connexes :
Elément de script
Description
IMPORT
Importe des objets d'un fichier XML.
Elément de script - Traitement d'objets
Importation et exportation d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.2.4 IMPORT
Fonction script : Importe des objets d'un fichier XML.
Syntaxe
IMPORT(Fichier [,[Répertoire], [Paramètre Objet] [,Paramètre Lien]] )
Elément de syntaxe
Description/format
Fichier
Nom du fichier avec chemin complet pour l'importation des objets
Format : Littéral de script ou Variable de script
Dossier
Nom du dossier dans lequel les objets doivent être enregistrés
Format : Littéral de script ou Variable de script
Paramètre objet
Paramètre indiquant comment procéder avec les objets existant déjà
Format : littéral de script, Variable de script ou chiffre
Valeurs autorisées : "0" (valeur par défaut), "1"
"0" = Les objets existants sont ignorés
"1" = Les objets existants sont remplacés
62
Chapter 3 Organisation fonctionnelle
Paramètre lien
Paramètre indiquant comment gérer les liens disponibles avec les répertoires
Format : littéral de script, Variable de script ou chiffre
Valeurs autorisées : "0", "1" (valeur par défaut)
"0" = Les liens disponibles ne sont pas conservés
"1" = Les liens disponibles sont conservés
Ce paramètre n'est alors important que lorsque le paramètre objet "1" a été
sélectionné.
Codes retour
"0" - L'importation a réussi.
"20657" - Le dossier cible n'existe pas.
"20692" - Le fichier n'existe pas.
"21724" - L'accès au fichier est impossible à cause des autorisations manquantes.
"21729" - Le fichier XML importé ne présente pas le format UC4 et ne peut donc pas être importé.
"21730" - Le fichier XML importé ne présente pas l'encodage requis.
"21732" - Une erreur est survenue lors de l'importation. Vous trouverez des informations
complémentaires sur les causes dans le rapport d'activation.
Remarques
La fonction de script vous permet d'importer des objets d'un fichier XML formaté en conséquence.
La fonctionnalité d'importation et d'exportation n'est pas adaptée aux transports de masse ! Dans ces
cas, utilisez plutôt le Conteneur Transport UC4.
Les objets sont créés dans le dossier indiqué. Si celui-ci n'existe pas ou que ce paramètre est absent,
l'élément de script est interrompu avec le code retour 20657.
L'instruction de script :ON_ERROR permet de définir la réaction en cas d'importation erronée. Comme
indiqué auparavant, vous pouvez l'analyser avec les fonctions de script pour le traitement des erreurs. Le
traitement du script se poursuit. Toutefois, vous avez également la possibilité de l'interrompre.
Par défaut, la taille du fichier XML est limitée à 1 024 Ko. L'administrateur UC4 peut en définir une autre
dans la Variable UC_SYSTEM_SETTINGS à l'aide de la clé "MAX_IMPORT_SIZE".
Vous trouverez des informations complémentaires sur le processus d'importation dans le rapport
d'activation de l'objet réalisant l'importation.
L'importation échoue lorsque vous ne possédez pas d'autorisation d'écriture sur l'objet ou sur le dossier
de destination.
Attention : l'importation dans le dossier "Gestion des Versions" est impossible !
Dans un environnement UC4 partagé (les processus de travail sont exécutés sur plusieurs machines),
il est impossible de définir sur quelle machine l'importation doit être exécutée ! Vous devez donc indiquez
le chemin UNC sous Windows. Attention : le serveur doit être exécuté sous un Utilisateur de domaine
correspondant pour accéder au nom UNC. Si un serveur UNIX est utilisé, le chemin absolu doit être
indiqué en langage UNIX. En outre, le système de fichier doit être accessible (NFS, commande mount),
bien qu'il ne joue aucun rôle sur la machine où il se trouve. C'est le seul moyen de s'assurer que le fichier
XML souhaité est également utilisé.
Le Script permet d'ouvrir les Transactions ouvertes dans la base de données UC4.
Automation Engine
63
Par défaut, un lien est créé dans le dossier précédent pour chaque objet remplacé par l'importation qui ne
se trouve pas dans le dossier indiqué. Ce comportement peut être désactivé avec le paramètre Paramètre
Lien (valeur : 0). Cependant, cela supprime tous les liens existants des objets importés !
Exemple
Dans l'exemple suivant, les objets éventuellement présents sont ignorés lors de l'importation. Le fichier,
ainsi que le nom du dossier, sont transmis à la fonction sous forme de Variable de script.
:SET &FICHIER# ="\\PCUC4\UC4global\IMPORT\uc4_import.xml"
:SET &DOSSIER# = "IMPORT/JOBS"
:SET &RET#
=IMPORT(&FICHIER#,&DOSSIER#,"0")
Exemple pour UNIX :
:SET &FICHIER# ="/opt/UC4/import/uc4_import.xml"
:SET &DOSSIER# = "IMPORT/JOBS"
:SET &RET#
=IMPORT(&FICHIER#,&DOSSIER#,"0")
Rubriques connexes :
Elément de script
Description
EXPORT
Exporte les objets dans un fichier XML.
Elément de script - Traitement d'objets
Importation et exportation d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.2.5 MODIFY_OBJECT
Fonction script : Modifie un objet disponible (uniquement Groupe Calendrier, Login et Variable).
Informations générales
l
l
l
l
La fonction de script permet de modifier exclusivement des objets de type "Groupe Calendrier",
"Login" et "Variable" (uniquement statique).
L'instruction de script :ON_ERROR permet de définir la réaction en cas d'erreur. Comme
auparavant, vous pouvez l'analyser avec les fonctions de script pour traiter des erreurs. Par défaut,
le script continue à s'exécuter. Toutefois, vous avez également la possibilité de l'interrompre.
Vous avez besoin d'un droit d'écriture sur les types d'objet Groupe Calendrier, Login et Variable
pour les créer.
Le script permet d'ouvrir les Transactions ouvertes dans la base de données UC4.
Groupe Calendrier
[Groupe Calendrier] [Login] [Variable]
64
Chapter 3 Organisation fonctionnelle
Syntaxe
MODIFY_OBJECT(Nom d'objet, [Titre], [Calendrier] [,[Format de date:]Date1] [,[Format de date:]
Date2]])
Elément de syntaxe
Description/format
Nom d'objet
Nom de l'objet Groupe Calendrier.
Format : Littéral de script ou Variable de script
Titre
Titre de l'objet Groupe Calendrier.
Format : Littéral de script ou Variable de script
Calendrier
Nom d'une entrée de calendrier de l'objet Calendrier indiqué.
Format : Littéral de script ou Variable de script
Format de date
Format prédéfini de la date indiquée.
: ou ;
Séparateur entre le format de date et la date.
Date1
Date de début de la période de validité de l'entrée de calendrier.
Indication d'une date correspondant au format de date.
Date2
Date de fin de la période de validité de l'entrée de calendrier.
Indication d'une date correspondant au format de date.
[Format date:]Date1
et
[Format date:]Date2
Début et fin de la validité de l'entrée de calendrier.
Format : Littéral de script ou Variable de script
Codes retour
"0" - L'objet Calendrier a été modifié.
"20645" - L'objet n'existe pas.
"20670" - La date de fin de l'entrée de calendrier précède la date de début.
Remarques
La fonction de script permet de modifier le titre de l'objet Calendrier ainsi que la date de début et de fin
d'une entrée de calendrier. Les paramètres inutilisés laissent les définitions de calendrier existantes
inchangées.
Les scripts suivants sont aussi disponibles pour le traitement des entrées de calendrier :
:SET_CALE - Ajoute ou supprime une entrée de calendrier, une date ou une période.
VALID_CALE - Vérifie si une date est contenue dans une entrée de calendrier.
Exemple
Dans l'exemple, la période de validité de l'entrée de calendrier "JOURS_OUVRES" est modifiée. Le titre
du calendrier reste inchangé.
:SET &RET# = MODIFY_OBJECT("AGENDA_ENTREPRISE",,"JOURS_
OUVRES","DD.MM.YYYY:01/05/2011","DD.MM.YYYY:01/05/2012")
Automation Engine
65
Login
[[Groupe Calendrier] [Login][Variable]
Syntaxe
MODIFY_OBJECT(Nom d'objet, [Titre], Nom, Type, Info de Login, [Mot de passe], [Action])
Elément Description/format
de
syntaxe
Nom
d'objet
Nom de l'objet Login.
Format : Littéral de script ou Variable de script
Titre
Titre de l'objet Login.
Format : Littéral de script ou Variable de script
Nom
Nom d'un Agent ou d'un système Backend.
Format : Littéral de script ou Variable de script
Si vous indiquez "*", la saisie de Login s'applique à tous les Agents ou systèmes.
Le nom des systèmes Backend est défini par l'utilisateur dans l'objet Login.
Type
Type d'hôte ou application.
Format : Littéral de script ou Variable de script
Valeurs autorisées :
"BS2000" = Hôte de type BS2000/OSD
"GCOS8" = Hôte de type Bull GCOS 8
"JMX" = Saisie de Login pour Java EE/JMX
"MAIL" = Saisie de Login pour l'interface de messagerie
"MPE" = Hôte de type MPE
"MVS" = Hôte de type z/OS, MVS, z/OS
"OA" = Saisie de Login pour Oracle Applications
"OS400" = Hôte de type OS/400
"PS" = Saisie de Login pour PeopleTools
"R3" = Saisie de Login pour SAP
"SIEBEL" = Saisie de Login pour Siebel
"SQL" = Saisie de Login pour les bases de données
"UNIX" = Hôte de type Unix, Linux, z/Linux
"VMS" = Hôte de type OpenVMS
"WINDOWS" = Hôte de type Windows
Outre les plateformes des agents listées, tous les types qui ont été définis par
l'administrateur dans la variable UC4 UC_LOGIN_TYPES peuvent aussi être indiqués.
Info.
Login
Informations de Login avec lesquelles la connexion doit avoir lieu.
Format : Littéral de script ou Variable de script
Le format du Login est propre à la plateforme et à l'application. Vous trouverez des détails à
ce sujet au chapitre "Objet Login".
66
Chapter 3 Organisation fonctionnelle
Mot de
passe
Mot de passe pour la plateforme de l'application.
Format : Littéral de script ou Variable de script
La plausibilité n'est pas vérifiée lors de l'exécution de la fonction de script MODIFY_
OBJECT.
Action
Action qui doit être effectuée.
Valeurs autorisées : "ADD" (valeur par défaut), "DEL"
"ADD" = Ajoute la saisie d'utilisateur indiquée à la fin de la liste ou remplace celle qui existe
par des données identiques pour l'hôte, le type d'hôte et les infos de Login.
"DEL" = Supprime la saisie d'utilisateur indiquée de la liste. Si la saisie d'utilisateur ne se
trouve pas dans la liste, aucun code d'erreur n'est généré. L'indication d'un mot de passe ne
s'applique pas à la suppression de la saisie.
Codes retour
"0" - L'objet Login a été modifié.
"20645" - L'objet n'existe pas.
Remarques
La fonction de script vous permet de modifier le titre ainsi que les saisies de Login d'un objet Login.
L'utilisation de la fonction MODIFY_OBJECT pour l'objet Login sert principalement à la gestion
automatisée des utilisateurs, par exemple pour effectuer des modifications externes de mot de passe dans
la plate-forme UC4 Automation.
Si un agent indiqué avec son type est déjà disponible dans l'objet Login, l'entrée existante est modifiée.
Si l'Agent et le type ne correspondent pas, la ligne de script n'a aucun effet.
Exemple
Dans le premier exemple, les données de connexion pour l'utilisateur "henri" sont définies dans l'objet
LOGIN "LOGIN.HENRI" sur l'hôte "UNIX01" et le mot de passe "uc4" est attribué. Si la saisie d'utilisateur
existe déjà, seul le mot de passe est défini sur "uc4".
:SET &RET# = MODIFY_OBJECT
("LOGIN.HENRI",,"UNIX01","UNIX","henri","uc4","ADD")
Dans l'exemple suivant, les données de connexion dans l'objet LOGIN "LOGIN.HENRI" pour l'utilisateur
"henri" sont supprimées dans le Client "012" du système SAP "SAP01".
:SET &RET# = MODIFY_OBJECT
("LOGIN.HENRI",,"SAP01","R3","012,henri","","DEL")
Variable
[Groupe Calendrier] [Login] [Variable]
Automation Engine
67
Syntaxe
MODIFY_OBJECT(Nom d'objet, [Titre], [Traitement des erreurs], [Type de données])
Elément de
syntaxe
Description/format
Nom d'objet
Nom de l'objet Variable.
Format : Littéral de script ou Variable de script
Titre
Titre de l'objet Variable.
Format : Littéral de script ou Variable de script
Traitement des
erreurs
Traitement lorsque la variable ne contient pas de valeur pour le temps d'exécution.
Valeurs autorisées : "E" ou "I"
"E" = Un message d'erreur est émis.
"I" = La variable va être initialisée en fonction de son type.
Type de données
Type de variable.
Valeurs autorisées : "String" (ou "C"), "Number" (ou "F"), "Timestamp" (ou "T"),
"Time" ou "Date"
"String", "C"= Texte
"Number", "F" = Nombre
"Timestamp", "T" = Marque horaire
"Time" = Heure
"Date" = Date
Codes retour
"0" - L'objet Variable a été modifié.
"20640" - Une valeur non valide a été indiquée pour le type de données.
"20645" - L'objet n'existe pas.
"20651" - Le type de données ne peut pas être modifié, car des valeurs se trouvent dans la Variable.
Remarques
La fonction de script vous permet de modifier le titre ainsi que le traitement des erreurs et le type de
données d'un objet Variable statique.
Si le type de données doit être modifié, aucune valeur ne doit être enregistrée dans la Variable.
Les objets Variable dynamiques ne peuvent pas être modifiés avec la fonction de script.
Exemple
Dans l'exemple, une variable est modifiée pour que le nombre de fichiers déterminé puisse y être
enregistré.
:SET &RET# = MODIFY_OBJECT("OUTPUT.WEBHELP.VARA","Nombre de fichiers de
l'aide avec images",,"F")
Rubriques connexes :
68
Chapter 3 Organisation fonctionnelle
Elément de script
Description
:ON_ERROR
Détermine les réactions associées à certaines erreurs ou certains messages
de script.
CREATE_OBJECT
Crée un objet (uniquement Groupe Calendrier, Login et Variable).
REMOVE_OBJECT
Supprime un objet disponible.
MOVE_OBJECT
Déplace un objet dans un dossier.
ACTIVATE_UC_
OBJECT
Active un objet.
Script - Modifier les objets
Script - Corrections d'erreurs et messages
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.2.6 MOVE_OBJECT
Fonction script : Déplace un objet dans un dossier.
Syntaxe
MOVE_OBJECT (nom de l'objet, dossier cible)
Elément de syntaxe
Description/format
Nom d'objet
Nom de l'objet.
Format : Littéral de script ou Variable de script
Dossier de destination
Chemin du dossier dans lequel l'objet doit être déplacé.
Format : Littéral de script ou Variable de script
Codes retour
"0" - L'objet a été déplacé.
"20645" - L'objet n'existe pas.
"20657" - Le dossier cible n'existe pas.
Remarques
Le dossier dans lequel se trouve l'objet à déplacer n'a pas d'importance, car il est déterminé
automatiquement. Si l'objet possède des liens, ils sont ignorés et ne sont pas déplacés.
Une erreur de temps d'exécution se produit lorsque vous ne possédez pas de droit d'écriture sur l'objet
ou sur le dossier de destination.
Si l'objet ou le dossier n'existe pas, une erreur de temps d'exécution ne se produit que lorsque l'instruction
de script :ON_ERROR a été utilisée avec le paramètre ABEND. Dans ce dernier cas, l'objet reste dans
son dossier d'origine.
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die UC4-Datenbank
geschrieben werden.
Automation Engine
Exemple
Dans l'exemple, l'objet "VIENNE" est déplacé dans le sous-dossier "OBJETS" du dossier "FUSEAUX_
HORAIRES".
:ON_ERROR ABEND
:SET &RET# = MOVE_OBJECT ("VIENNE","FUSEAUX_HORAIRES/OBJETS")
Rubriques connexes :
Elément de script
Description
:ON_ERROR
Détermine les réactions associées à certaines erreurs ou certains messages de
script.
CREATE_
OBJECT
Crée un objet (uniquement Groupe Calendrier, Login et Variable).
REMOVE_
OBJECT
Supprime un objet disponible.
MODIFY_OBJECT Modifie un objet disponible (uniquement Groupe Calendrier, Login et Variable).
Script - Modifier les objets
Script - Corrections d'erreurs et messages
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.2.7 REMOVE_OBJECT
Fonction script : Supprime un objet disponible.
Syntaxe
REMOVE_OBJECT (nom d'objet)
Elément de syntaxe
Description/format
Nom d'objet
Nom de l'objet à supprimer.
Format : Littéral de script ou Variable de script
Codes retour
"0" - Le processus de suppression s'est bien terminé.
"20645" - L'objet n'existe pas.
"20217" -L'objet est déjà ouvert en vue du traitement.
"20369" - L'objet se trouve dans le Conteneur Transport.
Remarque
Un objet supprimé est déplacé dans la corbeille et peut être restauré.
69
70
Chapter 3 Organisation fonctionnelle
L'instruction de script :ON_ERROR vous permet de définir la réaction à une erreur et de l'analyser avec
les fonctions de script pour le traitement des erreurs. Selon le paramétrage, le script reprend ou est
interrompu.
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die UC4-Datenbank
geschrieben werden.
Exemple
L'exemple supprime l'objet "AGENDA_ENTREPRISE2003".
:SET &RET# = REMOVE_OBJECT("AGENDA_ENTREPRISE2003")
Rubriques connexes :
Elément de script Description
CREATE_
OBJECT
Crée un objet (uniquement Groupe Calendrier, Login et Variable).
MODIFY_
OBJECT
Modifie un objet disponible (uniquement Groupe Calendrier, Login et Variable).
MOVE_OBJECT
Déplace un objet dans un dossier.
:ON_ERROR
Détermine les réactions associées à certaines erreurs ou certains messages de
script.
Elément de script - Traitement d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.3 Activation d'objets
3.3.1 :BEGINREAD... :ENDREAD
Instructions de script : Début et fin d'une boîte de dialogue destinée aux questions posées à
l'Utilisateur.
Syntaxe
:BEGINREAD[Titre[,F]]
:ENDREAD
Elément de syntaxe
Description/format
:BEGINREAD
Début d'une boîte de dialogue destinée aux questions posées à l'Utilisateur.
Titre
Titre de la boîte de dialogue.
Format : littéral de script, variable de script ou fonction de script
Valeur par défaut : Nom de l'objet
Automation Engine
71
F
Formate le texte de la boîte de dialogue pour que toutes les lettres occupent la
même largeur.
:ENDREAD
Fin d'une boîte de dialogue destinée aux questions posées à l'Utilisateur.
Remarques
Les instructions de script :BEGINREAD et :ENDREAD définissent le début et la fin d'une boîte de
dialogue destinée aux questions posées à l'Utilisateur. Entre les deux instructions de script, il peut y avoir
n'importe quelles instructions :READ dont le nombre détermine la taille de la boîte de dialogue. Les
paramètres sont décisifs pour l'aspect de la boîte de dialogue et pour la fonction des champs de saisie
créés qui reçoivent les saisies Utilisateur.
L'indication d'un titre pour la boîte de dialogue est facultative. Lorsque vous n'utilisez pas de titre, c'est le
nom de l'objet qui s'affiche. L'indication du paramètre "F" a pour effet que toutes les lettres occupent la
même largeur. Cela permet donc d'adapter le texte à la largeur de la colonne.
Utilisez l'instruction :PRINT pour afficher un texte quelconque dans la boîte de dialogue.
Le script permet d'ouvrir les Transactions ouvertes dans la base de données UC4.
Générer à l'Exécution
Cette boîte de dialogue n'est pas affichée lorsque l'option "Générer à l'Exécution" (onglet Attributs) est
activée. C'est aussi le cas lorsqu'un objet est exécuté dans un Workflow qui possède ce paramètre.
La valeur par défaut est utilisée pour les instructions :READ. Lorsqu'aucune réponse valable ne se produit
par ce moyen, la génération du script est interrompue.
Exemple
Dans l'exemple, la boîte de dialogue Connexion s'affiche et demande à l'Utilisateur d'indiquer son
département et son nom.
:BEGINREAD "Identification"
:READ &ABT#, "08", "Indiquer le département",, M
:READ &NOM#, "08", "Indiquer un nom",, M
:ENDREAD
Rubriques connexes :
:READ
Lit les données entrées par l'Utilisateur dans la boîte de dialogue.
:PRINT Affiche le texte dans une boîte de dialogue destinée aux questions posées à l'Utilisateur ou
dans le protocole d'activation d'un objet.
72
Chapter 3 Organisation fonctionnelle
Elément de script - Activation d'objets
Exemples :
Maintenance de la base de données avec options
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.3.2 :PRINT
Instruction de script : Affiche le texte dans une boîte de dialogue destinée aux questions posées à
l'Utilisateur ou dans le protocole d'activation d'un objet.
Syntaxe
:P[RINT] Texte
:P[RINT] Texte1, Texte2
Elément de syntaxe
Description/format
Texte, Texte1, Texte2
Texte qui doit être affiché dans la boîte de dialogue ou dans le protocole
d'activation, maximum de 1024 caractères pour Texte ou Texte1 + Texte2.
Format : Littéral de script ou Variable de script
Remarques
Pour l'instruction de Script, il existe deux possibilités d'application :
Affichage dans le protocole d'activation
:PRINT affiche le texte indiqué dans le protocole d'activation. Cela peut servir à afficher les résultats d'un
traitement. Il est également possible de vérifier le remplacement correct de Variables de Script. Le
protocole d'activation fait partie du rapport.
Syntaxe
Description
:PRINT Texte
Le texte s'affiche sur sa propre ligne.
:PRINT Texte1, Texte2
Une ligne est créée pour chaque Texte1 et Texte2.
Affichage dans la boîte de dialogue
:PRINT affiche le texte indiqué dans la boîte de dialogue pour les questions posées à l'Utilisateur
(:BEGINREAD... :ENDREAD). Utilisez cette instruction pour remanier de manière plus claire le masque
de saisie et pour ajouter des explications.
Syntaxe
Description
:PRINT
Texte
Le texte s'affiche sur sa propre ligne.
:PRINT
Texte1,
Texte2
Si une instruction :READ suit l'instruction, le Texte1 est positionné sur la ligne de
commande et le Texte2 sur la zone de texte. Sinon, le Texte2 est ajouté au Texte1.
Automation Engine
73
Dans les deux possibilités d'application, les Variables de Script contenues dans les textes sont
remplacées par leurs valeurs correspondantes.
L'administrateur UC4 peut déterminer si l'affichage de l'instruction de Script doit être rapporté en plus
du protocole d'activation dans le rapport et dans le fichier de logging d'UC4 Automation Engine à l'aide du
paramètre SERVER_OPTIONS des Variables UC4 UC_SYSTEM_SETTINGS.
Attention : l'instruction :PRINT supprime les espaces à la fin du texte à afficher.
Exemples
Cette exemple illustre l'affichage d'un texte dans le protocole d'activation pendant que la date du jour
actuelle est utilisée dans une Variable de Script.
:SET &DATEDUJOUR# = SYS_DATE(DD.MM.YY)
:PRINT "Evaluation quotidienne du &DATEDUJOUR# en cours."
Dans l'exemple, le texte "Saisie requise" correspondant aux questions posées à l'Utilisateur est affiché
dans les champs de saisie de la boîte de dialogue.
:BEGINREAD
:PRINT "", "Saisie requise :"
:READ &N°Cpt.#,,"N° Cpt."
:ENDREAD
Rubriques connexes :
:BEGINREAD...
:ENDREAD
Début et fin d'une boîte de dialogue destinée aux questions posées à
l'Utilisateur.
:READ
Lit les données entrées par l'Utilisateur dans la boîte de dialogue.
Elément de script - Activation d'objets
Exemples :
Maintenance de la base de données avec options
Définition du statut final en fonction du contenu du rapport
Détermination du message d'erreur et du numéro de l'erreur
Réaction à des Evènements externes
74
Chapter 3 Organisation fonctionnelle
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.3.3 :PUT_READ_BUFFER, :PUT_PROMPT_BUFFER
Instruction de script : Enregistre le nom et le contenu d'une Variable de script dans le cache.
Syntaxe
:PUT_READ_BUF[FER]Nom de Variable = Contenu
:PUT_PROMPT_BUF[FER] Nom de variable = Contenu
Elément de syntaxe
Description/format
Nom de Variable
Nom de la variable de script (sans &).
Format : Nom UC4
Contenu
Valeur qui est attribuée à la Variable de script.
Format : littéral de script ou Variable de script
Remarques
L'instruction de script doit être utilisée comme suit, en relation avec la fonction ACTIVATE_UC_OBJECT
:
1. Enregistrer les Variables de script avec :PUT_READ_BUFFER.
2. Activer un objet avec ACTIVATE_UC_OBJECT.
3. On peut maintenant accéder à l'aide de :READ aux Variables de script enregistrées dans le
script de l'objet activé.
:PUT_READ_BUFFER crée la Variable de script dans sa propre zone de mémoire à laquelle il attribue une
ID interne. Vous devez appeler cette instruction pour chaque valeur que vous voulez enregistrer. Elle est
créée dans la même zone de mémoire.
Le paramètre nom de Variable est créé sans le signe "&" habituel des Variables de script.
Dès lors que ACTIVATE_UC_OBJECT est créé dans le script, la zone de mémoire est fermée. L'objet
activé peut accéder aux Variables de script comme indiqué auparavant.
L'instruction :PUT_READ_BUFFER, qui se trouve après la fonction ACTIVATE_UC_OBJECT, utilise
une autre zone de mémoire à laquelle il attribue également une nouvelle ID.
Voici ce qui se passe lors de la lecture des Variables de script du cache :
l
l
L'instruction :READ provoque la lecture individuelle de chaque Variable de script. Pour cela, vous
devez cependant indiquer le signe "&" avant le nom de Variable.
Chaque Variable de script ne peut être lue qu'une seule fois, car elle est supprimée du cache lors du
processus de lecture.
Le script sert également à définir les valeurs PromptSet pour cela avec les objets activés ACTIVATE_
UC_OBJECT. Le nom de la variable ReadBuffer doit correspondre au nom de la variable PromptSet de
l'objet démarré.
Utilisation multiple de noms de Variable
Automation Engine
75
On peut également créer plusieurs fois :PUT_READ_BUFFER avec le même nom de Variable. La valeur
n'est alors pas réécrite, car l'instruction crée sa propre entrée dans la zone de mémoire à chaque
exécution. A la lecture d'une Variable de script, :READ commence toujours à chercher au début de la zone
de mémoire. La valeur renvoyée est celle de la première instance des Variables. L'entrée est ensuite
supprimée. Ainsi, lors de la lecture suivante, la valeur renvoyée est celle de l'instance suivante. Cela
représente un avantage énorme en vous permettant de définir et de lire les valeurs en boucle.
Exemple
Dans cet exemple, la Variable de script "DATUM1" fournit une valeur et dépose l'entrée dans le cache. Le
Job "EVALUATION" est ensuite activé.
:PUT_READ_BUFFER DATE1# = "01.01.2006"
:SET &ACTJOB# = ACTIVATE_UC_OBJECT(JOBS, EVALUATION)
Le Job "EVALUATION" utilise cette entrée dans le cache.
:READ &DATE1#,,
:SET &RET# = VALID_DATE("JJ.MM.AAAA:&DATE1#")
Rubriques connexes :
Elément de script
Description
:READ
Lit les données entrées par l'Utilisateur dans la boîte de dialogue.
ACTIVATE_UC_OBJECT
Active un objet.
Elément de script - Activation d'objets
Exemples
Alerte avec texte du message variable
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.3.4 :READ
Instruction de script : Lit les données entrées par l'Utilisateur dans la boîte de dialogue.
Syntaxe
:REA[D] InVariable, [Vérification de la saisie], [Ligne de commande] [, Valeur par défaut] [, Format de
saisie]
Elément de syntaxe
Description/format
InVariable
Prend la valeur saisie par l'Utilisateur.
Format : Variable de script
76
Chapter 3 Organisation fonctionnelle
Vérification de la saisie
Indicateur qui détermine le mode de vérification des données indiquées par
l'Utilisateur.
Format : littéral de script ou Variable de script
Les indicateurs suivants peuvent être définis :
l
l
l
l
l
"00"
Aucune vérification de saisie n'est effectuée (valeur par défaut).
"01" à "99"
Détermine la longueur maximale des caractères utilisables (par ex.
"10").
"nombre min. - nombre max."
Le nombre saisi doit se situer dans cette plage (par ex."10-20").
Format de Date
Les données indiquées par l'Utilisateur doivent adopter le format de
date prédéfini (par ex. AAAAMMJJ).
Valeur, Valeur1-Valeur2
Les donnés indiquées par l'Utilisateur doivent être identiques à une
valeur ou à une plage de valeurs spécifiée. Les valeurs et plages de
valeurs peuvent être combinées de façon quelconque, séparées par
des virgules.
Ligne de commande
Texte invitant l'Utilisateur à indiquer des données dans la boîte de dialogue.
Format : littéral de script ou Variable de script
Valeur par défaut : "Indiquez la valeur pour la Variable Nom de Variable"
Valeur par défaut
Texte de saisie proposé dans la boîte de dialogue.
Format : littéral de script ou Variable de script
1024 caractères max.
Automation Engine
Format de saisie
77
Indicateurs du format de saisie requis. Plusieurs caractères peuvent être
entrés dans n'importe quel ordre (par ex. "MN").
Format : Littéral de script ou Variable de script
Les caractères suivants s'appliquent :
l
l
l
l
l
l
l
"C"
Le curseur est placé dans ce champ de saisie lorsque l'instruction
READ se trouve au sein d'un bloc :BEGINREAD... :ENDREAD.
"D"
La saisie est protégée et est représentée par les astérisques "*".
"I" (uniquement pour les Jobs)
Dans l'objet "Job", les instructions :READ et les données indiquées
par l'Utilisateur ayant réussi sont consignées par défaut dans des
lignes REMARK du Job généré. Indiquez le caractère "I" pour ignorer
cette journalisation.
"K"
La saisie peut se faire en minuscules. Sans cet indicateur, les
caractères sont déjà convertis en majuscules lors de la saisie.
"M"
L'Utilisateur doit effectuer une saisie.
"N"
Seuls des chiffres peuvent être saisis.
"O"
L'Utilisateur peut non seulement choisir des données dans la zone de
liste, mais aussi saisir des données de son choix.
Les indicateurs "D" et "N" ne peuvent pas être utilisés simultanément.
Utilisez le paramètre Vérification de la saisie pour des données protégées qui
ne doivent recevoir que des chiffres.
Exemple :
:READ &PASS#,"1-99999999","Indiquez le mot de passe
(numérique)",,"DM"
Lorsque vous demandez une Vérification de saisie sans définir de Valeur
par défaut, il faut tout de même indiquer la virgule. Cette particularité est
illustrée dans l'exemple précédent.
Remarques
L'instruction READ permet d'afficher une boîte de dialogue dont l'apparence et la fonction dépendent des
paramètres utilisés. Le nom de l'objet est indiqué dans la barre de titre. Les données indiquées par
l'Utilisateur sont affichées dans un champ de saisie et lues dans une Variable de script.
Attention : la boîte de dialogue s'affiche seulement lorsque le script est exécuté en Mode dialogue !
Dans un autre mode, la valeur par défaut est utilisée.
Attention lors de l'utilisation de ce script que la valeur saisie soit compatible avec le Type de données
de "InVariable" (Variable de destination).
Les paramètres Vérification de la saisie, Ligne de commande, Valeur par défaut et Format de saisie sont
facultatifs. S'il n'y a pas de contenu dans les paramètres Vérification de la saisie et Ligne de commande il
faut néanmoins indiquer les guillemets dans l'instruction READ.
78
Chapter 3 Organisation fonctionnelle
Champ Description
Champ
de
chiffres
Si vous indiquez une plage de valeurs numériques continues (par ex. "0-255") dans la
Vérification de saisie utilisant le format de saisie "N", un champ de chiffres doté de flèches
haut/bas s'affiche.
Zone
de liste
Contient les valeurs uniques du paramètreVérification de la saisie, par ex. "A,B,C" sont
affichés sous forme de zone de liste.
Zone
de
texte
Si des plages de valeurs, telles que "A, 5-9", sont utilisées dans la vérification de la saisie
cela crée une zone de texte.
Si les virgules et les traits d'union ne doivent pas être interprétés comme des séparateurs, les valeurs
peuvent être en outre indiquées entre guillemets simples. Exemple : On peut choisir la valeur "1-5" ou la
valeur "8,9".
:READ &OPTION#,"'1-5','8,9'","Veuillez sélectionner","1-5"
Dans la vérification de la saisie, vous pouvez utiliser seulement des lettres ou des chiffres ou une
combinaison des deux. Dans le dernier cas, les caractères sont contrôlés. La vérification de la saisie doit
alors utiliser la formulation suivante. Dans l'exemple proposé, les caractères autorisés sont "A" à "F" et "1"
à "999" :
:READ &SAISIE#, "A-F,1-9,01-99",001-999,"Veuillez sélectionner"
Lorsque l'Utilisateur n'indique ni ne sélectionne de valeur, une espace (" ") est enregistrée dans la
Variable de script.
Les valeurs qui ont été indiquées dans les boîtes de dialogue sont automatiquement consignées
ensemble dans le rapport. Vous pouvez éviter cette journalisation en désactivant le paramètre "I" dans le
rapport de Job. Attention : les données protégées (généralement les mots de passe) et définies avec le
paramètre "D" sont affichées cryptées dans le rapport.
Le script permet d'ouvrir les Transactions ouvertes dans la base de données UC4.
L'instruction :READ permet également d'afficher les valeurs placées auparavant dans la mémoire
intermédiaire (voir :PUT_READ_BUFFER).
L'utilisation de l'instruction :PUT_VAR suivie de l'instruction :READ implique les particularités
suivantes. En cas d'interruption manuelle de la génération du script à l'aide du bouton "Interrompre" ou en
raison de valeurs par défaut non valides lors de l'exécution de l'instruction :READ (voir "Générer à
l'Exécution"), la Variable UC4 conserve les valeurs définies à l'aide de l'instruction :PUT_VAR.
Exemples
Le système demande une valeur de remplacement à l'Utilisateur. La valeur lue n'est soumise à aucune
vérification. Il est également possible de ne rien saisir. Les caractères sont déjà convertis en majuscules
lors de la saisie.
Automation Engine
79
:READ &REMPLACEMENT#,"00","Veuillez indiquer le remplacement"
Le système demande une valeur de remplacement à l'Utilisateur. Aucune valeur par défaut n'est proposée.
La valeur saisie n'est pas non plus vérifiée. La saisie peut se faire dans ce cas en minuscules.
:READ &REMPLACEMENT#,,,,"K"
Demande de chiffre. Dans ce cas, le paramètre "N" crée une zone de chiffres avec des flèches. Vous
pouvez saisir uniquement des nombres entre 0 et 5.
:READ &NOMBRE#,"0-5","Indiquez un nombre",,"N"
Le système demande une date à l'Utilisateur. La valeur lue doit être au format de date valide "AAMMJJ".
Cette saisie est obligatoire.
:READ &DATE1#,"AAMMJJ","Indiquez une date limite (AAMMJJ)",,"M"
Le système demande un indicateur à l'Utilisateur. Le champ de saisie contient la valeur par défaut "A". La
valeur lue est vérifiée et peut être seulement "A", "X", "5", "6", "7", "8" ou "9".
:READ &LKZ#,"A,X,5-9","Indiquez un indicateur de liste","A"
80
Chapter 3 Organisation fonctionnelle
Le système demande à l'Utilisateur d'indiquer un mot de passe de 8 caractères maximum. La ligne de
commande détermine que la saisie est protégée, que les caractères ne sont pas convertis en majuscules
et que la saisie est prescrite.
:READ &PASS#,"08","Indiquez le mot de passe (8 caractères max.)",,"DMK"
Dans l'exemple, le système demande l'adresse e-mail. L'Utilisateur dispose de trois choix. Une des
adresses e-mail est entre guillemets simples de sorte que le trait d'union à l'intérieur ne soit pas interprété
en tant que plage de valeurs.
:READ &UTILISATEUR#,"[email protected], [email protected],'[email protected]'", "Sélectionnez un Utilisateur"
Dans l'exemple suivant, l'Utilisateur peut sélectionner une des trois adresses e-mail, ou bien en indiquer
une autre.
:READ &UTILISATEUR#,"[email protected], [email protected],'[email protected]'", "Sélectionnez un Utilisateur",, "O"
Rubriques connexes :
:BEGINREAD...
:ENDREAD
Début et fin d'une boîte de dialogue destinée aux questions posées à l'Utilisateur.
Automation Engine
:PRINT
Affiche le texte dans une boîte de dialogue destinée aux questions posées à
l'Utilisateur ou dans le protocole d'activation d'un objet.
:PUT_READ_
BUFFER
Enregistre le nom et le contenu d'une Variable de script dans le cache.
81
Elément de script - Activation d'objets
Exemples :
Maintenance de la base de données avec options
Alerte avec texte du message Variable
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.3.5 ACTIVATE_UC_OBJECT
Fonction script : Active un objet.
Syntaxe
ACTIVATE_UC_OBJECT(Nom d'objet[ , [WAIT] [ , [Date logique] [ , [Fuseau horaire] [ , , [ PASS_
VALUES] [ , [Queue] [ , [Alias] [ , [ENABLE_PROMPTS] ] ] ] ] ] ] ] )
ACTIVATE_UC_OBJECT(Nom d'objet[ , , [Date logique] [ , [Fuseau horaire] [ , [Heure de début] [ , [
PASS_VALUES] [ , [Queue] [ , [Alias] [ , [ENABLE_PROMPTS] ] ] ] ] ] ] ])
Elément de syntaxe
Description/format
Nom d'objet
Nom de l'objet
Format : nom UC4, littéral de script ou Variable de script
WAIT
Le mot clé WAIT a pour effet que la fonction de script attend la fermeture de
l'objet.
Date logique
Date logique avec laquelle l'objet doit être activé au format "AAMMJJ" ou
"AAAAMMJJ".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
Fuseau horaire
Nom d'un objet Fuseau horaire.
Fuseau horaire pour lequel la marque horaire doit être convertie.
Format : Littéral de script ou Variable de script
Heure de Début
Marque horaire à partir de la date et de l'heure ("AAAA-MM-JJ HH:MM:SS").
Format : Littéral de script ou Variable de script
PASS_VALUES
Le mot clef PASS_VALUES permet de faire hériter les Variables d'objet et les
Variables PromptSet des Tâches à démarrer.
Queue
Entrée d'un objet Queue spécifique qui doit être utilisé pour démarrer la
Tâche.
Si aucune Entrée de queue n'a lieu, l'objet est activé par défaut dans la Queue
de Clients (CLIENT_QUEUE).
82
Chapter 3 Organisation fonctionnelle
Alias
Alias pour l'objet activable. Celui-ci s'affiche dans la Fenêtre d'Activités et
dans les statistiques du nom de l'objet.
Format: nom UC4, littéral de script ou Variable de script
L'alias est soumis aux mêmes règles que les noms d'objet dans UC4 :
Longueur maximale: 200 caractères
Caractères autorisés: A-Z, 0-9, $, @, _, . et #
ENABLE_PROMPTS
Exécution des masques d'entrée du PromptSet des objets activés dans
l'interface Utilisateur
Conditions :
1) Un utilisateur est connecté à l'interface Utilisateur
2) Le script doit se trouver dans un objet démarré par cet Utilisateur
3) Lors de l'exécution d'un script, l'utilisateur doit encore être connecté à l'ID
de session de l'interface Utilisateur.
Si les conditions précédentes ne sont pas remplies ou si aucun objet
PromptSet n'est attribué à l'objet activable, cela n'a donc aucun effet sur
l'exécution suivante du script. Les dialogues d'exécution ne s'affichent pas.
Codes retour
Numéro courant (RunID) de l'objet actif.
"0" - L'activation a échoué.
"20423" - Tentative d'auto-activation de la Tâche. Paramètre non autorisé, qui pourrait conduire à une
boucle sans fin.
Remarques
La fonction de script ACTIVATE_UC_OBJECT vous permet d'activer un objet appartenant à la classe
d'objet des objets activables.
Si vous n'indiquez aucune heure de début, l'activation de l'objet se produit immédiatement. Si vous
définissez une heure de début spécifique, la Tâche est planifiée et reçoit le statut "Attente d'heure
d'exécution".
Veillez à ne pas faire coïncider les heures d'activation et de démarrage !
L'objet peut, en outre, être activé avec une date logique. S'il n'y a pas de format de date, la date doit être
indiquée au format "AAMMJJ" ou "AAAAMMJJ". Deux points ou un point-virgule sont autorisés comme
séparateur entre le format de date et la date.
La fonction de script renvoie le RunID de l'objet après une activation réussie. Le code retour en cas
d'erreur est "0".
Interrogez toujours le code retour. L'instruction de script :ON_ERROR et les fonctions de script pour le
traitement des erreurs permettent d'analyser la cause exacte de l'erreur.
Situation
Code Description
retour
Généralités
L'activation
de l'objet a
réussi.
RunID Il s'agit du cas général.
Automation Engine
L'objet
n'existe pas
0
L'objet est introuvable et ne peut donc pas être activé.
Pas de droit
d'exécution
pour l'objet
0
Le système d'autorisation vérifie si l'Utilisateur responsable de l'activation
possède aussi un droit d'exécution pour l'objet.
Interruption
de
l'activation
de l'objet
0
L'interruption peut être effectuée manuellement ou par d'autres Tâches.
L'heure de
début se
trouve dans
le passé
RunID
Génération
de script à
l'activation
Erreur de
script dans
l'objet
0
Les erreurs de script interrompent l'activation d'un objet.
:EXIT 0
RunID Dans cette instruction, il s'agit d'une fin de traitement de script et non d'une
interruption. Elle n'est donc pas considérée comme une erreur.
:EXIT <> 0
0
:STOP
NOMSG
RunID Dans cette instruction, il s'agit d'une fin de traitement de script et non d'une
interruption. Elle n'est donc pas considérée comme une erreur.
:STOP
MSG
0
Cette instruction interrompt l'activation de l'objet.
Cette instruction interrompt l'activation de l'objet.
Génération
de script à
l'exécution
Erreur de
script dans
l'objet
:EXIT 0
:EXIT <> 0
:STOP
MSG
:STOP
NOMSG
Si l'option "Générer à l'Exécution" de l'objet à activer est définie, l'exécution
du script n'a pas lieu pendant l'activation et ACTIVATE_UC_OBJECT ne peut
éventuellement pas reconnaître les erreurs éventuelles. Dans ce cas, le code
retour renvoyé est toujours le RunID.
RunID
Post-Script
Erreur de
script dans
l'objet
RunID Le post traitement est traité à la fin de l'exécution et ne se trouve donc pas dans
la zone d'activation. Les erreurs ne sont donc pas reconnues.
Un objet ne peut pas s'auto-activer par la fonction de script. On évite ainsi les boucles infinies qui
pourraient paralyser tout le système UC4.
83
84
Chapter 3 Organisation fonctionnelle
Attention : le paramètre WAIT ne peut pas être utilisé en même temps qu'une heure de début est
indiquée.
Les paramètres de la fonction script doivent être organisés dans un certain ordre. Si vous omettez des
paramètres, il faut quand même indiquer les virgules correspondantes (voir les exemples suivants).
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die UC4-Datenbank
geschrieben werden.
Exemples
Dans le premier exemple, un Job "Statut" est activé, ce qui provoque un contrôle du code retour.
:SET&ACTOBJ# = ACTIVATE_UC_OBJECT(STATUT)
:IF&ACTOBJ# = "0"
:
SET&NUMERR# = SYS_LAST_ERR_NR()
:
SET&ERRINS# =SYS_LAST_ERR_INS()
:
SET&MESSAGE# = GET_MSG_TXT(&NUMERR#,&ERRINS#)
:
SET&RET# = SEND_MAIL("[email protected]",,&MESSAGE#, "Veuillez
vérifier. Merci.")
:ENDIF Dans le deuxième exemple, l'objet est activé avec une date logique.
:SET&ACTOBJ# = ACTIVATE_UC_OBJECT(STATUT,,"JJ.MM.AA:01.12.00")
Le Workflow GS.SEMAINE doit être exécuté mi-juillet, le soir.
:SET &ACTOBJ# = ACTIVATE_UC_OBJECT(GS.SEMAINE,,, "MEZ", "2005-07-15
18:00:00")
Les Variables UC4 du Job GS.FIN doivent également être héritées.
:SET&ACTOBJ# = ACTIVATE_UC_OBJECT("GS.FIN",,,,, PASS_VALUES)
Rubriques connexes :
Elément de script
Description
RESTART_UC_
OBJECT
Répète l'exécution d'une tâche.
CANCEL_UC_
OBJECT
Interrompt un objet activé.
GET_UC_OBJECT_
NR
Indique le numéro courant (RunID) d'un objet activé.
CREATE_OBJECT
Crée un objet (uniquement Groupe Calendrier, Login et Variable).
:ON_ERROR
Détermine les réactions associées à certaines erreurs ou certains messages
de script.
Elément de script - Activation d'objets
Exemples :
Maintenance de la base de données avec options
Alerte avec texte du message Variable
Détermination du message d'erreur et du numéro de l'erreur
Réaction à des Evènements externes
Automation Engine
85
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.3.6 AUTOFORECAST
Fonction script : Calcule les données de simulation pour des activités futures.
Syntaxe
AUTOFORECAST()
Code retour
"0" - Les données de simulation ont été créées avec succès.
Remarques
La simulation automatique indique les Tâches qui seront exécutées dans une période donnée et offre ainsi
une prévisualisation détaillée des activités futures. Le calcul des données de simulation peut s'effectuer
manuellement dans l'Interface Utilisateur ou avec la fonction de script AUTOFORECAST. Des
simulations sont alors créées pour les Schedules et les Evènements actifs.
La fonction de script ne calcule les données de simulation que pour le Client dans lequel elle est
exécutée.
L'instruction de script :ON_ERROR permet de définir la réaction en cas d'erreur. Vous pouvez analyser
l'erreur avec les fonctions de script pour le traitement des erreurs. Le traitement du script se poursuit.
Toutefois, vous avez également la possibilité de l'interrompre.
Pour en savoir plus sur la simulation automatique, reportez-vous au document correspondant dans le
chapitre Interface Utilisateur.
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die UC4-Datenbank
geschrieben werden.
Exemple
L'exemple met en application la fonction de script .
:SET &RET# = AUTOFORECAST()
Rubriques connexes :
Elément de script
Description
FORECAST_OBJECT
Création d'une simulation pour l'objet indiqué.
FORECAST_TASK
Création d'une simulation pour la Tâche indiquée.
Elément de script - Activation d'objets
Simulation automatique
86
Chapter 3 Organisation fonctionnelle
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.3.7 CANCEL_UC_OBJECT
Fonction script : Interrompt un objet activé.
Syntaxe
CANCEL_UC_OBJECT( RunID [, Supplément])
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : Littéral de script ou Variable de script
Supplément
Ce paramètre supplémentaire s'applique à certains types d'objet.
Format : Littéral de script ou Nom UC4
l
Pour les Evènements :
Pour les objets Evènement, vous pouvez indiquer un statut permettant
de mettre fin à l'objet.
l
Valeurs autorisées :
"ENDED_OK"
"ENDED_CANCEL"
"ENDED_TIMEOUT"
Pour les Workflows, les Schedules et les Groupes :
Pour ces types d'objet, l'utilisation du paramètre "ALL" permet
d'interrompre également toutes les Tâches enfants en cours.
Valeur autorisée :
"ALL"
Codes retour
"0" - La Tâche a été correctement interrompue.
"11049" - La Tâche portant le RunID indiqué est introuvable et n'a pas pu être interrompue.
"11050" - La Tâche présente un statut qui ne peut pas être interrompu.
"20347" - Un script, initié via CallAPI ne peut pas être interrompu par la fonction CANCEL_UC_
OBJECT.
Remarques
La fonction de script CANCEL_UC_OBJECT vous permet d'interrompre tous les objets activables.
L'accès à l'objet activé se fait par la description courte du type d'objet et par le numéro d'identification
unique (RunID) qui a activé ce type d'objet.
Automation Engine
87
L'instruction de script :ON_ERROR permet de définir la réaction en cas d'erreur. Comme indiqué
auparavant, vous pouvez analyser l'erreur avec les fonctions de script pour le traitement des erreurs. Le
traitement du script se poursuit. Toutefois, vous avez également la possibilité de l'interrompre.
Attention aux particularités suivantes applicables aux Evènements : Une nouvelle instance de
l'Evènement activé est créée pour chaque occurrence de l'Evènement. Cette instance contient aussi son
propre numéro courant (RunID). Si vous voulez interrompre un Evènement lorsque des conditions sont
réalisées, vous devez déterminer le numéro courant (RunID) à l'aide de la fonction SYS_ACT_PARENT_
NR.
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die UC4-Datenbank
geschrieben werden.
Exemples
Dans l'exemple, l'objet Alerte "ALARMIERUNG3" est activé. L'instruction :READ sert uniquement à
attendre jusqu'à ce que l'Alerte soit affichée. L'objet Alerte est interrompu après lecture du numéro courant
(RunID) et confirmation par l'Utilisateur.
:SET &NUMJOB# = ACTIVATE_UC_OBJECT(ALARMIERUNG3)
:READ &NUMJOB#,,,&NUMJOB#
:SET &STATUT# = CANCEL_UC_OBJECT(&NUMJOB#)
L'exemple présente un extrait du script d'un Evènement. Le traitement du script jusqu'à ce que survienne
l'Evènement permet de déterminer le numéro courant (RunID) et d'interrompre l'Evènement.
:SET &NUMJOB# = SYS_ACT_PARENT_NR()
:SET &STATUT# = CANCEL_UC_OBJECT( &NUMJOB#)
Les lignes suivantes interrompent un objet Evènement en cours avec le statut "ENDED_CANCEL".
:SET &NUMRUN# = GET_UC_OBJECT_NR(EVNT.NACHT)
:SET &STATUT# = CANCEL_UC_OBJECT(&NUMRUN#, "ENDED_CANCEL")
Rubriques connexes :
Elément de script
Description
ACTIVATE_UC_
OBJECT
Active un objet.
RESTART_UC_
OBJECT
Répète l'exécution d'une tâche.
GET_UC_OBJECT_
NR
Indique le numéro courant (RunID) d'un objet activé.
:ON_ERROR
Détermine les réactions associées à certaines erreurs ou certains messages
de script.
Elément de script - Activation d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.3.8 FORECAST_OBJECT
Fonction script : Création d'une simulation pour l'objet indiqué.
88
Chapter 3 Organisation fonctionnelle
Syntaxe
FORECAST_OBJECT(nom d'objet, titre, date, heure de début [,entrées] [,groupes_ERT])
Elément Description/format
de
syntaxe
Nom
d'objet
Nom de l'objet.
Format : Littéral de script ou Variable de script
Titre
Nom de la simulation
Format : Littéral de script ou Variable de script
Date
Date de début logique au format "AAMMJJ" ou "AAAAMMJJ"
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi en premier le
format de date souhaité suivi d'un séparateur (: ou ;) puis la date. L'indication du format de
date est facultative.
Heure
de début
Heure de début de la Tâche au format "HHMMSS".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer l'heure dans un autre Format d'heure. Saisissez ainsi en premier le
format d'heure souhaité suivi d'un séparateur (;) puis l'heure. L'indication du format d'heure
est facultative.
Entrées
Paramètre indiquant si les entrées (des groupes) doivent être prises en compte.
Format : Littéral de script ou Variable de script
Valeurs autorisées : "Y", "N" (valeur par défaut)
ERT_
groupes
Durée moyenne estimée (ERT) des groupes. Cette valeur est utilisée si les entrées sont
définies sur "N".
Format : Variable de script ou chiffre
Valeurs autorisées :
"0" - L'ERT du groupe est utilisée. (valeur par défaut)
De "1" à "7199" - Valeur fixe en secondes.
Code retour
"0" - La simulation a pu être créée avec succès.
Remarques
Il est possible de créer une simulation de la durée d'exécution pour chaque objet activable. Première
solution : dans l'Interface Utilisateur, utilisez la commande appropriée du menu contextuel d'UC4
Explorer. Après indication de certains critères, le système crée une simulation pour l'objet. Seconde
solution : utilisez cette fonction de script.
Comme dans la saisie manuelle, vous devez indiquer le nom de la simulation (en majuscules, sans
espace), ainsi que les date et heure de début. Pour ces dernières, servez-vous de la possibilité qui vous
est offerte de définir un format de votre choix. Pour les Tâches qui font partie d'un groupe, vous pouvez
définir au besoin les paramètres Entrées et ERT_groupes. Attention : le titre de la simulation doit être
unique.
Automation Engine
89
Afin de créer une simulation pour des Tâches courantes, utilisez le script FORECAST_TASK.
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die UC4-Datenbank
geschrieben werden.
Exemple
La ligne suivante crée une simulation pour un Transfert de Fichier, avec indication des formats de date et
d'heure.
:SET &RET# = FORECAST_OBJECT("C70.WINDOWS","FORECAST_FT_
C70.WINDOWS","MM/DD/YY:11/03/03","HH:MM;12:30")
Le second exemple crée la simulation d'un Job exécuté au sein d'un groupe. Vous ne devez pas utiliser
l'ERT de ce Job, mais une valeur fixe de 60 secondes.
:SET &RET# = FORECAST_OBJECT("T91.SOLDE.03","SIMULATION_
T91.SOLDE.03","MM/DD/YY:11.07/03","200000","Y",60)
Rubriques connexes :
Elément de script
Description
AUTOFORECAST
Calcule les données de simulation pour des activités futures.
FORECAST_TASK
Création d'une simulation pour la Tâche indiquée.
Elément de script - Activation d'objets
Simulation
Détermination de la durée d'exécution
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.3.9 FORECAST_TASK
Fonction script : Création d'une simulation pour la Tâche indiquée.
Syntaxe
FORECAST_TASK(RunID, titre [,entrées] [,groupes_ERT] [, jours] )
Elément de
syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : Littéral de script ou Variable de script
Titre
Nom de la simulation
Format : Littéral de script ou Variable de script
Entrées
Paramètre indiquant si les entrées (des groupes) doivent être prises en compte.
Format : Littéral de script ou Variable de script
Valeurs autorisées : "Y", "N" (valeur par défaut)
90
Chapter 3 Organisation fonctionnelle
ERT_groupes
Durée moyenne estimée (ERT) des groupes. Cette valeur est utilisée si les entrées
sont définies sur "N".
Format : littéral de script, nombre sans guillemets ou Variable de script
Valeurs autorisées :
"0" - L'ERT du groupe est utilisée. (valeur par défaut)
De "1" à "7199" - Valeur fixe en secondes.
Jours
Nombre de jours qui doivent être calculés au maximum dans le futur
Format : littéral de script, nombre sans guillemets ou Variable de script
Valeur par défaut : "1"
Code retour
"0" - La simulation a pu être créée avec succès.
Remarques
Il est possible de créer une simulation de la durée d'exécution pour chaque Tâche courante. Solution
manuelle : dans l'Interface Utilisateur, utilisez la commande appropriée du menu contextuel de la Fenêtre
d'Activités. Après indication de certains critères, le système crée une simulation pour la Tâche. Seconde
solution : utilisez cette fonction de script.
Comme dans la saisie manuelle, vous devez indiquer le nom de la simulation (en majuscules, sans
espace). Pour les Tâches qui font partie d'un groupe, vous pouvez définir au besoin les paramètres
Entrées et ERT_groupes. Attention : le titre de la simulation doit être unique.
Si vous souhaitez créer une simulation pour des objets, utilisez le script FORECAST_OBJECT.
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die UC4-Datenbank
geschrieben werden.
Exemple
La ligne suivante crée une simulation pour un Transfert de Fichier.
:SET &RUNNR# = GET_UC_OBJECT_NR ("C70.WINDOWS")
:SET &RET# = FORECAST_TASK(&RUNNR#,"PROGNOSE_FT_C70.WINDOWS")
Le second exemple crée la simulation d'un Job exécuté au sein d'un groupe. Vous ne devez pas utiliser
l'ERT de ce Job, mais une valeur fixe de 60 secondes.
:SET &RUNNR# = GET_UC_OBJECT_NR ("T91.SALDO.03")
:SET &RET# = FORECAST_TASK(&RUNNR#,"PROGNOSE_T91.SALDO.03","N",60)
Rubriques connexes :
Elément de script
Description
AUTOFORECAST
Calcule les données de simulation pour des activités futures.
FORECAST_OBJECT
Création d'une simulation pour l'objet indiqué.
Elément de script - Activation d'objets
Simulation
Détermination de la durée d'exécution
Automation Engine
91
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.3.10 RESTART_UC_OBJECT
Fonction script : Répète l'exécution d'une tâche.
Syntaxe
RESTART_UC_OBJECT (Nom d'objet, RunID de référence, [Point de reprise], [Indicateurs] [,
Queue])
Elément
de
syntaxe
Description/format
Nom
d'objet
Nom de l'objet
Format : littéral de script, Variable de script ou fonction de script
RunID de
référence
RunID auquel la reprise fait référence ou mot-clé LAST pour indiquer la dernière exécution
de la tâche.
Format : littéral de script, nombre, variable de script ou fonction de script
La répétition d'une tâche qui est déjà elle-même une reprise n'est pas permise. Le suivi
des activités ne serait en effet plus garanti. Le RunID doit donc faire référence à une
exécution initiale. Si vous indiquez le mot-clé LAST, la dernière exécution initiale est
utilisée.
Point de
reprise
Emplacement du script à partir duquel le traitement doit être répété.
Format : nom UC4, littéral de script, nombre, Variable de script
L'indication de ce paramètre n'est bien sûr possible que si vous avez défini des points
de reprise à l'aide de :RESTART dans le script de la Tâche qui doit être répétée.
Si vous ne le remplissez pas, l'ensemble du script est exécuté.
92
Chapter 3 Organisation fonctionnelle
Indicateurs Instructions pour l'exécution de la Tâche.
Format : Littéral de script ou Variable de script
Valeurs autorisées
"GEN_JCL" = Sortie du JCL dans le rapport d'activation.
"ORIGINAL_SCRIPT" = Sortie du script d'origine dans le rapport d'activation.
"VAR_MOD" = Sortie de la modification de Variables dans le rapport d'activation.
"ATT_MOD" = Sortie de la modification d'Attributs dans le rapport d'activation.
"ATT_DIALOG" = Activation de la fenêtre de dialogue des attributs.
"MAN_RELEASE" = Attente de la libération manuelle.
"KEEP_STARTTYPE" = Conservation du type de démarrage.
"ONLY_ABENDED" = Répétition uniquement des Tâches subordonnées interrompues.
Plusieurs indicateurs peuvent être entrés, séparés par des virgules. Si vous les indiquez
nominalement et que vous n'utilisez pas de variable de script, vous devez placer la liste
des indicateurs entre guillemets.
Les valeurs autorisées correspondent aux options qui sont disponibles dans le dialogue
"Exécuter..." en cas de reprise manuelle.
Queue
Entrée d'un objet Queue spécifique qui doit être utilisé pour la reprise de la Tâche.
Si aucune queue n'est indiquée, la tâche est activée automatiquement dans la Queue de
Clients (CLIENT_QUEUE).
Code retour
"0" - La reprise de la tâche s'est déroulée avec succès.
"7014" - Le RunID de référence n'existe pas.
"7015" - La reprise d'une exécution de reprise n'est pas autorisée.
"20346" - Le point de reprise n'existe pas.
"20380" - Le traitement de script de l'exécution de la reprise a été terminé par l'instruction :EXIT.
"20385" - L'objet est un Schedule.
"20628" - L'objet n'existe pas.
Remarques
La fonction de script permet de reprendre une tâche.
Attention, une Tâche peut se répéter si la fonction de script est appelée dans un post-traitement. Cela
peut créer une boucle.
Le RunID de la Tâche, dont l'exécution doit être répétée, est transmis à la fonction de script au moyen du
paramètre RunID de référence. Vous pouvez également utiliser le mot-clé LAST pour redémarrer la
dernière exécution d'une tâche.
Vous pouvez éventuellement désigner un point de reprise à prendre en compte en cas de nouvelle
exécution de la tâche. La Tâche débute, mais le traitement du script commence uniquement à cet
emplacement. Egalement facultatifs, les indicateurs influencent l'exécution de la tâche.
L'instruction de script :ON_ERROR permet de définir la réaction en cas d'erreur. Comme indiqué
auparavant, vous pouvez analyser l'erreur avec les fonctions de script pour le traitement des erreurs. Le
traitement du script se poursuit. Toutefois, vous avez également la possibilité de l'interrompre.
Le script permet d'ouvrir les Transactions ouvertes dans la base de données UC4.
Automation Engine
Exemple
Dans l'exemple, la dernière exécution d'un Job doit être répétée. Le JCL généré et les modifications
apportées aux variables sont affichés dans le protocole d'activation. Le Job attend dans la Fenêtre
d'Activités d'être libéré manuellement.
:SET &RET# = RESTART_UC_OBJECT ("JOBS.SYSTEM.CHECK",LAST,,"GEN_JCL,VAR_
MOD,MAN_RELEASE")
Rubriques connexes :
Elément de script
Description
:GENERATE
Contrôle la gestion des lignes de script pendant le traitement du script.
:ON_ERROR
Détermine les réactions associées à certaines erreurs ou certains
messages de script.
:RESTART
Définit des points de reprise dans un objet activable.
SYS_ACT_RESTART
Détermine si une tâche a été activée en mode reprise.
SYS_ACT_RESTART_
ME_NR
Indique le numéro courant (RunID) de l'objet activé en mode de reprise.
SYS_LAST_RESTART_
POINT
Indique la désignation du point de reprise précédent dans le script.
SYS_LAST_RESTART_
TEXT
Indique le texte du point de reprise précédent dans le script.
SYS_RESTART_POINT
Indique le point de reprise utilisé pour l'exécution de l'objet.
Elément de script - Activation d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.3.11 SYS_STATE_ACTIVE
Fonction script : Vérifie si un objet est déjà actif.
Syntaxe
SYS_STATE_ACTIVE([[Type d'objet,] Nom d'objet])
Elément de syntaxe
Description/format
Type d'objet
Description courte d'un objet activable
Format : Nom UC4, Littéral de script ou Variable de script
Nom d'objet
Nom d'un objet
Format : nom UC4, littéral de script ou Variable de script
Codes retour
"Y" - L'objet présente un statut dont le code retour système < 1699 ou égal à 1701.
"N" - L'objet présente un statut dont le code retour système > 1699 et différent de 1701.
93
94
Chapter 3 Organisation fonctionnelle
Remarques
Si aucun de ces deux paramètres n'est indiqué, la fonction vérifie l'objet dans lequel elle est exécutée.
La vérification se produit exactement à l'heure à laquelle la ligne de script contenant la fonction est traitée.
Un résultat négatif ne précise pas si l'objet à vérifier peut ou non être activé ultérieurement. Les fonctions
ne permettent donc pas d'effectuer une synchronisation des déroulements. Elles ne fournissent qu'une
information limitée dans le temps sur le statut des objets.
Si le nom de l'objet concerné est indiqué (= objet via lequel l'élément de script est exécuté), ce dernier est
également pris en compte et le code retour "Y" est toujours renvoyé.
Exemples
L'exemple vérifie si le même objet est déjà actif.
:SET &ACTIF# = SYS_STATE_ACTIVE()
Dans cet exemple, la fonction est utilisée pour formuler une condition.
:IF SYS_STATE_ACTIVE(JOBS, "MAWI.ABSCHLUSS") = "Y"
!...
:ENDIF
Rubriques connexes :
Elément de script
Description
SYS_STATE_JOB_ACTIVE
Vérifie si un Job est déjà actif.
SYS_STATE_JOBS_IN_
GROUP
Détermine le nombre de Jobs enregistrés en attente dans des
Groupes.
SYS_STATE_JP_ACTIVE
Vérifie si un Workflow est déjà actif.
Elément de script - Activation d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.3.12 SYS_ACTIVE_COUNT
Fonction script : Détermine le nombre d'objets dans les activités.
Syntaxe
SYS_ACTIVE_COUNT(Statut, Type d'objet [,Objet] [,Groupe] [,Hôte])
Elément de syntaxe
Description/format
Automation Engine
Statut
95
Statut des objets inclus dans les activités.
Format : Nom UC4, Littéral de script ou Variable de script
Valeurs autorisées : "*", "ANY_ABEND", "BLOCKED", "ANY_ALIVE",
"PREPARED" et "RUNNING"
"*" = toutes les Tâches indépendamment de leur Statut
"ANY_ABEND" = Tâches interrompues
"ANY_ALIVE" = Tâches d'un Groupe non terminées ou interrompues
"BLOCKED" = Tâches bloquées
"PREPARED" = Tâches marquées pour un Groupe
"RUNNING" = Jobs actifs.
Type d'objet
Description courte du type d'objet ou "*" pour tous les types d'objet.
Format : nom UC4, littéral de script ou Variable de script
Les paramètres suivants s'appliquent à des critères de filtrage facultatifs. Vous pouvez utiliser un, deux
ou les trois paramètres dans n'importe quelle combinaison. Si un paramètre est ignoré, veillez à ce que
sa virgule soit tout de même définie. Exemple :
:SET &NOMBRE# = SYS_ACTIVE_COUNT("*", JOBS,,"GS.GROUPE")
Objet
Nom d'un objet ou Filtre pour plusieurs objets.
Format : nom UC4, littéral de script ou Variable de script
L'utilisation de caractères génériques est possible. "*" signifie n'importe
quelle chaîne de caractères et "?" exactement un caractère.
Groupe
Nom d'un Groupe ou "*" pour tous les Groupes.
Format : nom UC4, littéral de script ou Variable de script
Hôte
Nom d'un Agent ou Filtre pour plusieurs Agents.
Format : nom UC4, littéral de script ou Variable de script
L'utilisation de caractères génériques est possible. "*" signifie n'importe
quelle chaîne de caractères et "?" exactement un caractère.
Code retour
Nombre d'objets actifs.
Remarques
Pour vérifier combien d'objets se trouvent dans la fenêtre d'activités, on peut utiliser la fonction de Script
SYS_ACTIVE_COUNT. Ce paramètre vous permet de déterminer les Tâches et de restreindre à certaines
Tâches. Le filtrage peut être fait sur le statut, le type d'objet, le nom d'objet, le Groupe, l'hôte ou toute
combinaison de ces derniers.
Le paramètre hôte permet notamment de piloter le parallélisme d'un Job sur une machine spécifique. Si un
Job est exécuté à intervalles réguliers, on peut exclure un recoupement si vous vérifiez auparavant avec
SYS_ACTIVE_COUNT si ce Job est encore actif. En effet, l'hôte cible peut également être défini ensuite
à l'aide de l'instruction de Script ::PUT_ATT. Lors des Transferts de Fichiers, l'hôte source et l'hôte cible
sont pris en compte.
Il est bien entendu logique d'utiliser le paramètre hôte uniquement si vous avez indiqué le type d'objet
"JOBS", "JOBF", "EVNT" ou "*". Le filtrage par hôte exclut tous les autres types d'objet car ceux-ci ne
nécessitent aucun Agent pour s'exécuter. C'est pourquoi l'exemple de Script suivant renvoie toujours la
valeur "0".
96
Chapter 3 Organisation fonctionnelle
:SET &NOMBRE# = SYS_ACTIVE_COUNT(ANY_ABEND,JOBP,,,"*")
Attention : il ne faut pas vérifier si l'hôte indiqué existe.
Lors du filtrage par Jobs actifs à l'aide du paramètre "RUNNING", tous les Jobs présentant un code retour
système entre 1500 et 1599 sont pris en compte.
Attention : les performances de la fonction de script ont été améliorées à partir de la version UC4
6.00A. Les bases de données MS SQL Server et DB2 en profitent. L'amélioration des performances est
principalement remarquable lorsque de nombreux SYS_ACTIVE_COUNT sont exécutés les uns après les
autres. Pour le recensement des Tâches, un seul instantané est créé. Par conséquent, les Tâches qui
n'ont pas encore été confirmées dans la base de données UC4 sont également comptées.
Techniquement, cette méthode est également appelée "uncommited read".
Exemples
Les exemples comptent le nombre d'objets actifs. Cela permet de déterminer le nombre de tous les
éléments de blocage, de tous les objets interrompus et de tous les Evènements.
:SET &NOMBRE# = SYS_ACTIVE_COUNT("BLOCKED", "*")
:SET &NOMBRE# = SYS_ACTIVE_COUNT(ANY_ABEND, "*")
:SET &NOMBRE# = SYS_ACTIVE_COUNT("*", EVNT)
L'exemple compte les Tâches enregistrées en attente dans un Groupe. La chaîne "FILE" doit apparaître
dans le nom de la Tâche.
:SET &NOMBRE# = SYS_ACTIVE_COUNT("PREPARED", "*", "*FILE*","GRP7")
L'exemple suivant détermine le nombre de Jobs ayant intégré l'Agent "UNIX01".
:SET &"NOMBRE# = SYS_ACTIVE_COUNT("*", "JOBS", "*",,"UNIX01")
Rubriques connexes :
Elément de script
Description
SYS_STATE_JOBS_IN_
GROUP
Détermine le nombre de Jobs enregistrés en attente dans des
Groupes.
Elément de script - Activation d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.3.13 SYS_STATE_JOB_ACTIVE
Fonction script : Vérifie qu'un Job est déjà actif.
Syntaxe
SYS_STATE_JOB_ACTIVE([Job])
Elément de syntaxe
Description/format
Automation Engine
Job
97
Nom d'un Job
Format : Nom UC4, Littéral de script ou Variable de script
Codes retour
"Y" - Le Job présente un statut dont le code retour système < 1699 ou égal à 1701.
"N" - Le Job présente un statut dont le code retour système > 1699 et différent de 1701.
Remarques
La fonction de script vérifie si le Job indiqué présente un statut avec un code retour système inférieur à
1699. Si ce paramètre n'est pas indiqué, la fonction vérifie l'objet dans lequel elle est exécutée.
La vérification se produit exactement à l'heure à laquelle la ligne de script contenant la fonction est traitée.
Un résultat négatif ne précise pas si l'objet à vérifier peut ou non être activé ultérieurement. Les fonctions
ne permettent donc pas d'effectuer une synchronisation des déroulements. Elles ne fournissent qu'une
information limitée dans le temps sur le statut du Job.
Si le nom de l'objet concerné est indiqué (= objet via lequel l'élément de script est exécuté), ce dernier est
également pris en compte et le code retour "Y" est toujours renvoyé.
Exemple
L'exemple détermine si un Job est actuellement actif et transmet le résultat à une Variable de script.
:SET &ACTIF# = SYS_STATE_JOB_ACTIVE(GS.FIN)
Rubriques connexes :
Elément de script
Description
SYS_STATE_ACTIVE
Vérifie si un objet est déjà actif.
SYS_STATE_JOBS_IN_
GROUP
Détermine le nombre de Jobs enregistrés en attente dans des
Groupes.
SYS_STATE_JP_ACTIVE
Vérifie si un Workflow est déjà actif.
Elément de script - Activation d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.3.14 SYS_STATE_JOBS_IN_GROUP
Fonction script : Détermine le nombre de Jobs enregistrés en attente dans des Groupes.
Syntaxe
SYS_STATE_JOBS_IN_GROUP([Job[, Groupe]])
Elément de syntaxe
Description/format
98
Chapter 3 Organisation fonctionnelle
Job
Nom d'un Job
Format : Nom UC4, Littéral de script ou Variable de script
Groupe
Nom d'un Groupe
Format : nom UC4, littéral de script ou Variable de script
Code retour
Nombre de Jobs enregistrés en attente dans des Groupes.
Remarques
La fonction détermine le nombre de Jobs ayant le statut "Enregistré en attente". Ce paramètre permet de
cibler un Job ou un Groupe en particulier, dont le nombre doit être relevé.
Attention : les performances de la fonction de script ont été améliorées à partir de la version UC4
6.00A. Les bases de données MS SQL Server et DB2 en profitent. L'amélioration des performances est
principalement remarquable lorsque de nombreux SYS_STATE_JOBS_IN_GROUP sont exécutés les
uns après les autres. Pour le recensement des Tâches, un seul instantané est créé. Par conséquent, les
Tâches qui n'ont pas encore été confirmées dans la base de données UC4 sont également comptées.
Techniquement, cette méthode est également appelée "uncommited read".
Exemples
Le premier exemple détermine tous les Jobs enregistrés en attente.
:SET &ACTIF# = SYS_STATE_JOBS_IN_GROUP()
Le deuxième exemple renvoie tous les Jobs enregistrés en attente dans le Groupe "GS.GROUPE".
:SET &ACTIF# = SYS_STATE_JOBS_IN_GROUP(,"GS.GROUPE")
Rubriques connexes :
Elément de script
Description
SYS_STATE_ACTIVE
Vérifie si un objet est déjà actif.
SYS_STATE_JOB_ACTIVE
Vérification de l'état d'activation d'un Job.
SYS_STATE_JP_ACTIVE
Vérifie si un Workflow est déjà actif.
Elément de script - Activation d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.3.15 SYS_STATE_JP_ACTIVE
Fonction script : Vérifie si un Workflow est déjà actif.
Automation Engine
99
Syntaxe
SYS_STATE_JP_ACTIVE([Workflow])
Elément de syntaxe
Description/format
Workflow
Nom d'un Workflow
Format : Nom UC4, Littéral de script ou Variable de script
Codes retour
"Y" - Le Workflow présente un statut dont le code retour système < 1699 ou égal à 1701.
"N" - Le Workflow présente un statut dont le code retour système > 1699 et différent de 1701.
Remarques
La fonction script vérifie si le Workflow indiqué présente un statut avec un code retour système inférieur à
1699 ou correspond exactement au code retour 1701. Si ce paramètre n'est pas indiqué, la fonction vérifie
l'objet dans lequel elle est exécutée.
La vérification se produit exactement à l'heure à laquelle la ligne de script contenant la fonction est traitée.
Un résultat négatif ne précise pas si l'objet à vérifier peut ou non être activé ultérieurement. Les fonctions
ne permettent donc pas d'effectuer une synchronisation des déroulements. Elles ne fournissent qu'une
information limitée dans le temps sur le statut du Workflow.
Si le nom de l'objet concerné est indiqué (= objet via lequel l'élément de script est exécuté), ce dernier est
également pris en compte et le code retour "Y" est toujours renvoyé.
Exemples
L'exemple vérifie si le Workflow "FIBU.FIN JOURNEE" est actif. Le nom du Workflow est transmis à
l'aide d'une Variable de script.
:SET &JP#= "FIBU.FINJOURNEE
:SET &ACTIF# = SYS_STATE_JP_ACTIVE(&JP#)
Rubriques connexes :
Elément de script
Description
SYS_STATE_ACTIVE
Vérifie si un objet est déjà actif.
SYS_STATE_JOB_ACTIVE
Vérification de l'état d'activation d'un Job.
SYS_STATE_JOBS_IN_
GROUP
Détermine le nombre de Jobs enregistrés en attente dans des
Groupes.
Elément de script - Activation d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
100
Chapter 3 Organisation fonctionnelle
3.3.16 TOGGLE_OBJECT_STATUS
Arrêt ou démarrage du traitement automatique de certains types d'objets.
Syntaxe
TOGGLE_OBJECT_STATUS( RunID, Statut [,Tâches])
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : nom UC4, littéral de script ou Variable de script
Statut
Statut du traitement devant être défini :
Format : nom UC4, littéral de script ou Variable de script
Valeurs autorisées : "STOP" et "GO"
"STOP" - Stoppe le traitement automatique des Tâches.
"GO" - Démarre le traitement automatique des Tâches.
Tâches
ALL : le traitement automatique des Tâches exécutées dans des Workflows,
des Groupes et des Schedules s'arrête ou démarre automatiquement.
Format : nom UC4, littéral de script ou Variable de script
Code retour
"0" : la modification du statut a réussi.
Remarques
La fonction de script modifie le traitement pour les Workflows, les Groupes, les Evènements, le
Gestionnaire de File d'Attente et les Schedules.
L'autorisation "Modifier avant l'Exécution" est nécessaire pour exécuter la fonction de script !
Exemple
Dans l'exemple suivant, le numéro courant (RunID) d'un Evènement est déterminé et lu dans et Variable
de script. Le traitement automatique de l'Evènement s'arrête. Le numéro courant (RunID) déterminé doit
pour cela être transmis par la Variable de script.
:SET &NUMRUN# = GET_UC_OBJECT_NR(DUMP.CONTROL)
:SET &RET# = TOGGLE_OBJECT_STATUS(&NUMRUN#, "STOP")
:PRINT &RET#
Rubriques connexes :
Elément de script
Description
TOGGLE_SYSTEM_STATUS Arrête ou démarre le traitement automatique de l'intégralité d'un Client.
Elément de script - Activation d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
Automation Engine
101
3.4 Lecture ou modification d'objets
3.4.1 :ADD_ATT
Instruction de script : Ajoute des destinataires à un objet Alerte pendant l'exécution.
Syntaxe
:ADD_ATT RECIPIENT , Destinataire [, Groupe Calendrier, Calendrier]
Elément de syntaxe
Description/format
RECIPIENT
Nom de l'attribut à ajouter.
Format : Nom UC4, Littéral de Script ou Variable de Script
Valeur autorisée : "RECIPIENT"
Destinataire
Nom d'un Utilisateur, d'un Groupe Utilisateur ou adresse e-mail
Format : Littéral de script ou Variable de script
Groupe Calendrier
Nom d'un objet Groupe Calendrier.
Format : Littéral de script ou Variable de script
Calendrier
Calendrier à l'intérieur de ce Groupe Calendrier
Format : Littéral de script ou Variable de script
Remarques
Cette instruction de Script peut être utilisée seulement dans l'onglet Traitement d'un objet Alerte. Elle
ajoute l'Utilisateur ou le Groupe Utilisateur indiqué à la liste des Destinataires à informer. On peut aussi
définir ainsi un Groupe Calendrier. Le destinataire n'est alors informé que si le Calendrier correspond.
Les destinataires déjà saisis ne sont pas remplacés, car l'instruction de Script ne modifie pas l'objet Alerte
L'ajout à la liste des destinataires n'est valable que pour son exécution.
Le Rapport affiche clairement le destinataire ayant ajouté l'instruction de Script.
Attention : l'Utilisateur doit être indiqué au formatNom d'utilisateur/département. Cela correspond au
nom de l'objet Utilisateur.
Exemples
Dans l'exemple, l'Utilisateur "BU/UC4" est ajouté à la liste des destinataires responsables. Il n'est
cependant averti que lorsque le Calendrier est vérifié.
:ADD_ATT RECIPIENT, "BU/UC4", "DISPOSITION","JOUR_SEMAINE"
Le deuxième exemple informe tous les membres du Groupe Utilisateur "ADMIN".
:ADD_ATT RECIPIENT, "ADMIN"
Rubriques connexes :
102
Chapter 3 Organisation fonctionnelle
Elément de script
Description
:REMOVE_ATT
Supprime des destinataires d'un objet Alerte pendant l'exécution.
:PUT_ATT
Définit ou modifie des attributs d'objets.
:PUT_ATT_APPEND
Etend le texte du message de l'Alerte pendant l'exécution.
GET_ATT
Indique la valeur des attributs d'une Tâche pendant la génération.
GET_ATT_SUBSTR
Indique une partie du texte du message de l'Alerte.
Elément de script - Lecture ou modification d'objets
Exemples
Alerte avec texte du message variable
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.2 :ADD_COMMENT
Instruction de script : Ajout d'un commentaire à une Tâche.
Syntaxe
:ADD_COMMENT [RunID] , Commentaire
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de la Tâche à laquelle un commentaire doit être
ajouté.
Format : Littéral de script, Variable de script, chiffre
Si vous n'indiquez aucun RunID, le commentaire est enregistré dans la Tâche
qui appelle l'instruction de script.
Commentaire
Texte du commentaire
Format : Littéral de script ou Variable de script
Remarques
Les commentaires comprennent également le nom d'un objet Utilisateur. L'Utilisateur responsable de
l'activation de l'objet qui appelle l'instruction de script est automatiquement saisi.
L'étendue du commentaire est essentiellement limitée à une ligne de script de 1024 caractères
maximum.
Automation Engine
103
Exemples
L'exemple ajoute à la Tâche un commentaire qui est contenu dans la Variable de script &TEXTE#.
:ADD_COMMENT ,&TEXTE#
Dans le deuxième exemple, le commentaire est enregistré dans le Workflow le plus élevé.
:SET &TOP_JP_RUNID# = SYS_ACT_TOP_NR()
:ADD_COMMENT &TOP_JP_RUNID#,"Le redémarrage du Transfert de Fichier a
réussi !"
Rubriques connexes :
Elément de script
Description
PREP_PROCESS_
COMMENTS
Prépare le traitement d'une séquence de données (commentaires d'une
Tâche)
Elément de script - Lecture ou modification d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.3 :ATTACH_SYNC
Instruction de script : Attribue un objet Sync à une Tâche.
Syntaxe
:ATTACH_SYNC [type d'objet,] [RunID], Objet Sync, [action du début], [action sur interruption],
[action de fin], Sinon, [NEXT_OBJECT]
Elément de syntaxe
Description/format
Type d'objet
Description courte d'un objet activable
Format : Littéral de script ou Variable de script
RunID
Numéro courant (RunID) de l'objet.
Format: littéral de script, Variable de script ou chiffre
Objet Sync
Nom d'un objet Sync avec lequel la Tâche doit être synchronisée.
Format: Littéral de script ou Variable de script
Action de début
Action qui doit être exécutée au début de la Tâche.
Format: Littéral de script ou Variable de script
Action sur interruption
Action qui doit être exécutée à l'interruption de la Tâche.
Format: Littéral de script ou Variable de script
Action de fin
Action qui doit être exécutée à la fin de la Tâche.
Format: Littéral de script ou Variable de script
104
Chapter 3 Organisation fonctionnelle
Sinon
Traitement des Tâches, lorsque soit l'action de début, l'action d'interruption
ou la Tâche de fin doivent être exécutées.
Format : Littéral de script ou Variable de script
Valeurs autorisées : "A", "W" ou "S"
"A" - Interrompre (Abend)
"W" - Attendre (Wait)
"S" - Ignorer (Skip)
NEXT_OBJECT
L'objet Sync doit être attribué au successeur direct dans un Workflow.
Format : Littéral de script ou Variable de script
Remarques
L'instruction de script permet d'ajouter un objet Sync à une Tâche déjà activée. L'attribution est
temporaire, c'est-à-dire uniquement pour la durée de son exécution. Type d'objet est un paramètre
facultatif, car le type d'objet peut être attribué de manière univoque par le numéro courant (RunID).
L'instruction de script peut également être utilisée afin par exemple d'attribuer un Sync à une des Tâches
suivantes dans le Workflow et d'influencer ainsi le traitement suivant. Pour la Tâche, dont le script contient
l'instruction de script, l'option doit être définie sur Générer à l'Exécution. La Tâche suivante, qui doit être
attribuée par un Sync, doit déjà être activée et posséder ainsi un RunID. Elle ne doit donc pas avoir été
définie sur Générer à l'Exécution. Le paramètre NEXT_OBJECT permet d'attribuer un Sync au
successeur direct d'une Tâche dans un Workflow. Cependant, la limitation prévoit qu'il n'est possible
qu'un seul successeur existe.
L'instruction de script permet également d'attribuer un Sync à chaque Tâche. Les conditions Sync
pourraient ainsi par exemple être composées de manière variable. Le paramètre RunID ne doit pas être
donné ici. Il faut cependant définir une virgule pour ces paramètres qui ne sont pas utilisés. L'option
Générer à l'Exécution ne doit pas être activée dans ce cas. La vérification des objets Sync est déjà
terminée lors de l'exécution du script.
Si un Sync est attribué à une autre Tâche déjà activée, cela n'est généralement possible que pour des
statuts spécifiques. La Tâche doit, soit ne pas encore être démarrée (code retour système < 1540), soit
elle se trouve en statut d'attente (code retour système entre 1600 et 1700). Si la Tâche a un statut
différent, une erreur de durée d'exécution se produit et le script s'interrompt.
Attention : la vérification SYNC des Tâches a lieu toujours après le traitement du Script. Si l'élément de
script est utilisé pour des objets Script, ces derniers sont synchronisés avec succès, mais ils n'exécutent
plus aucun traitement par la suite.
Exemples
Dans le premier exemple, l'objet Sync "SYSTEM_0001_EXCLUSIVE_SYNC" est ajouté au Job
"ARCHIV01". Si les actions correspondantes ne peuvent pas être effectuées, le Job est interrompu.
:SET &RUNID# = GET_UC_OBJECT_NR(ARCHIV01)
:ATTACH_SYNC &RUNID#,"SYSTEM_0001_EXCLUSIVE_
SYNC","USE","RELEASE","RELEASE","A"
Dans le deuxième exemple, l'objet Sync de la Tâche suivante est affecté au Workflow.
:ATTACH_SYNC ,"SYSTEM_0001_EXCLUSIVE.SYNC","USE","RELEASE","RELEASE","A","NEXT_
OBJECT"
Automation Engine
105
Rubriques connexes :
Elément de script
Description
SET_SYNC
Exécute l'action définie d'un objet Sync.
GET_SYNC
Demande le statut ou la valeur actuelle d'un objet Sync.
Elément de script - Lecture ou modification d'objets
Sync
Codes retour système des objets activables
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.4 :DELETE_VAR
Instruction de script : Supprime une ou toutes les valeurs d'un objet Variable statique.
Syntaxe
:DELETE_VAR Variable [,Key]
Elément de syntaxe
Description/format
Variable
Nom de l'objet Variable dans lequel des contenus doivent être
supprimés.
Format : Nom UC4, Littéral de script ou Variable de script
Clé
Clé à supprimer, valeur comprise.
Format : nom UC4, littéral de script ou Variable de script
Remarques
Attention: ce script ne peut être employé que pour les objets Variable statiques. Pour de plus amples
informations, reportez-vous à la description de l'onglet Variable.
L'instruction de script supprime toutes les lignes d'un objet Variable lorsque vous indiquez seulement le
paramètre Variable.
Utilisez en plus le paramètre Clé pour faire disparaître uniquement les lignes correspondantes de l'objet
Variable. Au contraire, si vous indiquez un astérisque "*" dans la clé, tout le contenu de l'objet Variable est
supprimé.
Attention : vous ne pouvez pas utiliser de caractères génériques ! Vous ne pouvez donc pas filtrer sur
plusieurs lignes avec "*" ou "?" dans le paramètre Clé !
Exemples
Dans le premier exemple, l'instruction de script supprime tout le contenu.
:DELETE_VAR "MAINTENANCE_BASE_DE_DONNEES"
Le second exemple supprime seulement les lignes ayant la Clé "Client".
106
Chapter 3 Organisation fonctionnelle
:DELETE_VAR "MAINTENANCE_BASE_DE_DONNEES", "Client"
Rubriques connexes :
Elément de script
Description
:PUT_VAR
Enregistre une valeur dans un objet Variable statique.
GET_VAR
Indique la valeur d'un objet Variable.
:SET_SCRIPT_VAR
Définit les valeurs des Variables de script par accès indirect.
GET_SCRIPT_VAR
Indique les valeurs des Variables de script par accès indirect.
PREP_PROCESS_
VAR
Prépare le traitement d'une séquence de données (valeurs d'un objet
Variable).
Elément de script - Lecture ou modification d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.5 :MODIFY_STATE
Instruction de script : Modifie le code retour ou le texte du statut d'un Job une fois ce dernier terminé.
Syntaxe
:MODIFY_STATE Propriété=Valeur
Elément de syntaxe
Description/format
Propriété
Propriété pour la fin du Job.
Format: variable de script ou nom UC4
Valeurs autorisées : "RETCODE", "STATUS_TEXT"
"RETCODE" = Code retour du Job.
"STATUS_TEXT" = Texte de statut d'un Job. Valeur
Nouvelle assignation pour la propriété de fin du Job.
Format: littéral de script, variable de script, nom UC4, chiffre sans guillemet
ou fonction de script
Pour "RETCODE" : Valeur numérique.
Pour "STATUS_TEXT": chaîne de caractères alphanumérique, 32 caractères
maximum.
Remarques
:MODIFY_STATE permet de modifier ultérieurement le code retour ou le texte de statut d'un Job. Cette
instruction de script peut être utilisée uniquement dans l'onglet Post-Script.
L'instruction de script peut être utilisée, par exemple, pour attribuer ultérieurement à un Job qui s'est
terminé "techniquement" mais normalement, le statut ENDED_NOT_OK. Cela peut s'avérer nécessaire
pour un Job pour lequel une erreur peut être détectée uniquement par l'analyse de son rapport (PREP_
PROCESS_REPORT).
Automation Engine
107
La modification du code retour influence le statut du Job. Le statut résulte du code retour maximal qui a été
défini pour une fin normale du Job (Onglet Exécution). Si le code retour défini est supérieur à ce code
retour maximal, le statut ENDED_NOT_OK est défini. Si le code retour défini est inférieur ou égal au code
retour maximal, le Job reçoit le statut ENDED_OK.
Un texte de statut distinct peut aussi être défini pour une fin de Job. Il remplace le texte qui a affiché
l'Agent Job dans la queue.
Les modifications sont journalisées dans le rapport du Job, sous l'onglet "Post traitement". Vous pouvez
aussi voir les valeurs modifiées dans la fenêtre des détails du Job.
Exemple
L'exemple montre un Job qui doit copier sous Windows un fichier qui n'existe pas. Normalement, le Job
devrait se terminer avec le code retour "0". Seul le rapport de Job permettrait de voir que le fichier à copier
n'a pas été trouvé.
Dans le post traitement du Job, le rapport de Job est maintenant analysé. L'erreur concernant le fichier à
copier est détectée et le code retour modifié. Le Job est ainsi interrompu.
:SET &HND# = PREP_PROCESS_REPORT(,,,"*Ne pas trouver le fichier*")
:PROCESS &HND#
: MODIFY_STATESTATUS_TEXT="Fichiers introuvables"
: MODIFY_STATE RETCODE=50
:ENDPROCESS
108
Chapter 3 Organisation fonctionnelle
Rubriques connexes :
Elément de script
Description
:EXIT
Instruction permettant de terminer le traitement du script avec un code
retour.
GET_UC_OBJECT_
STATUS
Indique le statut d'un objet activé.
Elément de script - Lecture ou modification d'objets
Exemples
Définition du statut final en fonction du contenu du rapport
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.6 :PUT_ATT
Instruction de script : Modifie la valeur d'un attribut pendant la génération.
Syntaxe
:PUT_ATT Attribut = Valeur
Elément de syntaxe
Description/format
Attribut
Nom de l'attribut auquel une valeur doit être attribuée.
Format : Nom UC4
Valeur
Valeur conforme qui doit être attribuée à l'attribut.
Format : littéral de script, Variable de script ou fonction de script
Remarques
Par défaut, les objets sont exécutés avec les attributs qui les ont définis. L'instruction :PUT_ATT vous
donne la possibilité de modifier un attribut dynamiquement pendant la génération, et de lui attribuer une
nouvelle valeur. Cette valeur est valide pour la génération en cours et n'est pas enregistrée de manière
permanente dans l'objet.
La valeur qui peut être attribuée à un attribut est très étroitement connectée à l'environnement système.
Ainsi par exemple, seul " " peut être attribué dans un Job en tant que type de démarrage pour un démarrage
immédiat ou un Groupe déjà défini. D'autres données provoqueraient une erreur lors de la génération.
Vous trouverez la liste des attributs de tous les objets (et les valeurs correspondantes possibles) dans
le manuel de l'Utilisateur.
Les attributs Jobs d'automatisation rapide peuvent changer avec la validation d'une nouvelle version
d'un Agent RA. Dans ce cas, les commandes :PUT_ATT des versions d'Agent précédentes ne
fonctionnent plus. UC4 recommande donc d'utiliser toujours des Variables d'objet pour les remplacements
de champ à la place des commandes :PUT_ATT. Pour ce faire, procédez comme suit:
1. Supprimez la commande :PUT_ATT de l'onglet Job script ou Pré-script.
Automation Engine
109
2. Ajoutez une variable plus la valeur à l'onglet Job Variables & Prompts.
3. Dans le champ qui doit être remplacé, saisissez à présent la Variable d'objet dans le format
&<Variable>#. <Variable> représente le nom de Variable que vous avez défini dans l'onglet Variables &
Prompts.
La modification des attributs est évidemment utile uniquement avant l'exécution de l'objet. C'est
pourquoi l'instruction :PUT_ATT ne peut pas être utilisée dans les onglets Post-Script.
Attention : les attributs ont des longueurs maximales différentes ! :PUT_ATT ne vérifie pas si la valeur
définie est plus longue que la longueur autorisée. La valeur est tronquée à la longueur maximale.
Si l'option "Générer à l'Exécution" de l'objet est activée, vous ne pouvez pas modifier le Groupe avec
:PUT-ATT.
La résolution du Groupe Agent et la sélection de l'Agent sur lequel la Tâche est exécutée doivent avoir
lieu avant l'exécution du script. La Variable :PUT_ATT vous permet dans ce cas de définir un nouvel
Agent, mais pas un Groupe Agent. Vous avez cependant la possibilité de lire les Agents d'un Groupe
Agent à l'aide de la fonction de script PREP_PROCESS_AGENTGROUP.
Dans l'onglet !Script de l'objet Evènement, l'instruction de script :PUT_ATT n'a aucun effet !
Les attributs HOST et SYSLST_DB (de BS2000-Jobs) peuvent être définis uniquement dans le prétraitement avec :PUT_ATT !
:PUT_ATT ne modifie par le contenu des Variables de script.
Dans l'onglet script, utilisez l'élément de script pour limiter le nombre d'exécutions max. parallèles
(attribut : MAX_TACHES_SIMULTANEE), la limite sera alors contrôlée après l'exécution du script,
lorsque la tâche sera générée à l'Exécution.
Exemple :
:SET &TYPE# = GET_ATT(EVENT_TYPE)
:PUT_ATT EVENT_CHECK_METHOD2 = "FILE_STABLE"
:PRINT &TYPE#
Considérons que la Variable de script &TYPE# obtienne la valeur "FA" par le biais de la fonction GET_
ATT. Suite à l'exécution de la fonction PUT_ATT, le résultat obtenu est de type "FT", car l'attribut "FILE_
STABLE" fait partie des Evènements du système de fichiers. La Variable de script &TYPE# conserve
malgré tout la valeur "FA".
La modification d'attributs (par exemple: objet Login) d'un objet spécifique avec :PUT_ATT n'est pas
possible lorsque l'Utilisateur a le droit d'écriture (W) sur l'ancienne valeur et aucun droit d'écriture sur la
nouvelle valeur de l'attribut.
Pour modifier la queue de la tâche (attribut QUEUE), utilisez l'élément de script :PUT_ATT dans le préscript. Veuillez alors tenir compte des points suivants :
Si lors de la tâche, l'option Générer à l'Exécution est définie, la vérification de la queue (vérification
des slots disponibles et du statut de la queue) sera exécutée avant le Pré-script. La tâche est certes
démarrée dans une queue modifiée, mais la vérification est exécutée avec la queue saisie dans l'objet.
La limite de la nouvelle queue n'est alors pas vérifiée et la tâche est éventuellement démarrée trop tôt.
Si par exemple la queue CLIENT_QUEUE est saisie dans l'objet, la tâche sera dans tous les cas
démarrée (dans la mesure où celle-ci n'est pas stoppée).
110
Chapter 3 Organisation fonctionnelle
Exemple
L'exemple illustre l'attribution d'un autre Agent pour l'objet.
:PUT_ATT HOST = "UNIX02"
Rubriques connexes :
Elément de script
Description
:ADD_ATT
Ajoute des destinataires à un objet Alerte pendant l'exécution.
:REMOVE_ATT
Supprime des destinataires d'un objet Alerte pendant l'exécution.
:PUT_ATT_APPEND
Etend le texte du message de l'Alerte pendant l'exécution.
GET_ATT
Indique la valeur des attributs d'une Tâche pendant la génération.
GET_ATT_SUBSTR
Indique une partie du texte du message de l'Alerte.
Elément de script - Lecture ou modification d'objets
Exemples
Alerte avec texte du message variable
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.7 :PUT_ATT_APPEND
Instruction de script : Etend le texte du message de l'Alerte pendant l'exécution.
Syntaxe
:PUT_ATT_APPEND CALL_TEXT = Texte
Elément de syntaxe
Description/format
CALL_TEXT
Nom de l'attribut dont la valeur doit être étendue.
Format : nom UC4 ou Variable de script
Valeur autorisée : "CALL_TEXT"
Texte
Texte devant être ajouté au texte de message existant.
Format : littéral de script, nombre, Variable de script ou fonction de script
Remarques
Cette instruction de Script peut être utilisée seulement dans l'onglet Traitement d'un objet Alerte. Elle
insère le texte indiqué à la fin du texte du message.
Cela ne modifie pas le texte de message existant, l'instruction de Script ne modifiant pas l'objet Alerte.
L'extension du texte du message s'applique uniquement à l'exécution de celui-ci.
Si vous utilisez des espaces, les particularités suivantes s'appliquent (voir aussi les exemples) :
l
l
Les espaces à la fin du texte à ajouter sont tronqués.
Si le texte comporte uniquement des espaces, ceux-ci sont complètement ignorés.
Automation Engine
111
Attention : pour des raisons techniques liées à la base de données, la longueur du texte transféré ne
doit pas dépasser 8000 caractères.
Exemples
Dans l'exemple, l'heure actuelle est enregistrée dans une Variable de Script et placée dans le tampon de
lecture. Un objet Alerte est ensuite activé.
:SET &TIME# = SYS_TIME("HH:MM")
:PUT_READ_BUFFERTIME# = "&TIME#"
:SET &CALL# = ACTIVATE_UC_OBJECT(CALL, BACKUP.END)
La Tâche d'envoi de message lit la valeur de la Variable de Script dans le tampon de lecture (READ).
L'heure actuelle est ajoutée au texte du message.
:READ &TIME#,,
:PUT_ATT_APPENDCALL_TEXT = " &TIME# heure."
Les exemples suivants vous montrent comment utiliser les espaces. Le texte de message est "Veuillez
vérifier...".
1) Le texte s'affiche correctement par les espaces en tête. Attention : veillez à ne pas ajouter
automatiquement un espace.
:PUT_ATT_APPEND CALL_TEXT = " Démarrez les processus Serveur"
Affichage :
Veuillez vérifier le démarrage des processus serveur
2) Attention : les espaces à la fin du texte sont tronqués.
:PUT_ATT_APPEND CALL_TEXT = " les processus Serveur "
:PUT_ATT_APPENDCALL_TEXT = "démarrer"
Affichage :
Veuillez vérifier le démarrage des processus serveur
3) Si le texte comporte uniquement des espaces, il est également ignoré.
:PUT_ATT_APPEND CALL_TEXT = " les processus Serveur"
:PUT_ATT_APPENDCALL_TEXT = "
"
:PUT_ATT_APPENDCALL_TEXT = "démarrer"
Affichage :
Veuillez vérifier le démarrage des processus serveur
Rubriques connexes :
Elément de script
Description
:ADD_ATT
Ajoute des destinataires à un objet Alerte pendant l'exécution.
:REMOVE_ATT
Supprime des destinataires d'un objet Alerte pendant l'exécution.
:PUT_ATT
Modifie la valeur d'un attribut pendant la génération.
GET_ATT
Indique la valeur des attributs d'une Tâche pendant la génération.
GET_ATT_SUBSTR
Indique une partie du texte du message de l'Alerte.
Elément de script - Lecture ou modification d'objets
112
Chapter 3 Organisation fonctionnelle
Exemples
Alerte avec texte du message variable
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.8 :PUT_VAR
Instruction de script : Enregistre les valeurs dans un objet Variable statique.
Syntaxe
:PUT[_VAR]Variable,[Clef], Valeur [, Valeur [, Valeur [, Valeur [, Valeur ] ] ] ]
Elément de syntaxe
Description/format
Variable
Nom de l'objet Variable à laquelle une valeur ou plusieurs valeurs doivent être
attribuées.
Format: Nom UC4 ou Variable de script
Clé
Lignes dans lesquelles les valeurs doivent être enregistrées.
Format: littéral de script, Variable de script ou fonction script
Valeur
Entrées qui doivent être écrites dans les colonnes de valeur. Les valeurs qui ne
correspondent pas aux colonnes sont supprimées. Les valeurs existantes sont
remplacées.
Format: littéral de script, nombre sans guillemets ou Variable de script
Remarques
Si une Variable dynamique est indiquée pour l'élément de script (Source: SQL, SQL interne, Multi ou
Type de données), cela entraîne une erreur de durée d'exécution. Seuls des objets Variables statiques
peuvent être remplis avec :PUT_VAR.
Les règles suivantes sont applicables à l'enregistrement de valeurs dans un objet Variable :
l
l
Si la Variable n'a pas encore de valeur, la Clef et la valeur sont ajoutées.
Si la Variable possède la Clef indiquée, sa valeur est remplacée.
Pour remplir plusieurs colonnes de valeurs d'une Variable, chaque valeur doit être séparée d'une virgule. Il
existe un maximum de 5 colonnes de valeurs pour des Variables statiques.
Vous ne devez pas indiquer le paramètre Clef si "pas de Clef" est sélectionné pour le paramètre "validité
des Variables" dans l'onglet "Attributs". Dans ce cas, la Variable ne contient pas de valeur. Attention : si la
Clef a été omise, il faut quand même définir les virgules correspondantes dans l'instruction.
Les valeurs peuvent être ajoutées sans être séparées par une virgule. Les virgules représentent des
séparateurs.
Exemple: Remplissage des 5 colonnes de valeur
:PUT_VAR VARA.TEST, "KEY1", Valeur1, Valeur2, Valeur3, Valeur4, Valeur5
Pour écrire une valeur dans une colonne qui contient une ou plusieurs virgules, cette dernière doit être
indiquée par des guillemets simples ou doubles.
Exemple: Dans la colonne de valeurs 1, s'inscrit la "Valeur1" et dans la valeur 2 la
Automation Engine
113
"Valeur2,Valeur3,Valeur4"
:PUT_VAR VARA.TEST, "KEY1", Valeur1, "Valeur2, Valeur3, Valeur4"
Pour enregistrer une valeur dans une Variable qui affiche le type de données"Marque horaire", vous devez
choisir un des formats suivants :
l
l
l
l
"AAAA-MM-JJ HH:MM:SS"
"AAMMJJ HHMMSS"
"AAAAMMJJ HHMMSS"
"AAAAMMJJHH24MISS"
Pour le type de données "Heure", "Date" et "Nombre", la valeur doit être indiquée dans le format de sortie
indiqué (onglet Attributs).
Tenir compte de la remarque suivante pour le type de données "Nombre": Si le système tente d'enregistrer
un nombre avec plusieurs chiffres après la virgule, tel que cela est autorisé dans le format de sortie, les
décimales superflues seront supprimées.
La fonction de script écrit également les valeurs dans l'objet Variable lorsque celui-ci vient d'être ouvert
par un Utilisateur afin de ne pas empêcher le traitement. Si l'Utilisateur veut modifier et enregistrer l'objet
Variable, il reçoit un avertissement lui indiquant que la Variable a été modifiée entretemps. Il peut alors
décider s'il souhaite quand même enregistrer ou rejeter ses modifications.
Pour le type de données "Texte", les espaces en tête de chaîne sont conservés. Les espaces à la fin
de la chaîne sont en revanche tronqués.
L'utilisation de l'instruction :PUT_VAR suivie de l'instruction :READ implique les particularités
suivantes : En cas d'interruption manuelle de la génération du script à l'aide du bouton "Interrompre" ou en
raison de valeurs par défaut non valides lors de l'exécution de l'instruction :READ (voir "Générer à
l'Exécution"), la Variable UC4 conserve les valeurs définies à l'aide de l'instruction :PUT_VAR.
Exemple
L'exemple montre que la date du jour et l'heure du jour actuelles sont communiquées et enregistrées dans
un objet Variable de type "Marque horaire". La date et l'heure du jour sont transmises à l'instruction de
script sous forme de Variable de script.
:SET &DATE# = SYS_DATE("AAAA-MM-JJ")
:SET &HEURE# = SYS_TIME("HH:MM:SS")
:PUT_VAR DATEDERESERVATION, , "&DATE# &HEURE#"
La Variable "ATTRIBUTS" utilisée dans l'exemple suivant, contient le domaine de validité "Index libre".
Par conséquent, il faut absolument indiquer laClef.
:SET &PRIO# = GET_ATT("UC4_PRIORITY")
:PUT_VAR ATTRIBUTE,"Priorité actuelle", &PRIO#
Dans l'exemple suivant, le nom, le type d'objet et les informations concernant le parent d'une Tâche sont
stockés sous le RunID de la Tâche dans l'objet Variable "OBJET_STATISTIQUE".
:SET &NOMP# = SYS_ACT_PARENT_NAME()
:SET &NUMP# = SYS_ACT_PARENT_NR()
:SET &TYPEP# = SYS_ACT_PARENT_TYPE()
:SET &NOM# = SYS_ACT_ME_NAME()
:SET &NUM# = SYS _ACT_ME_NR()
:SET &TYPE# = SYS_ACT_ME_TYPE()
:PUT_VAR OBJEKT_STATISTIK, "&NUM#", "Nom d'objet: &NOM#", "Type d'objet:
&TYPE#", "Nom du parent: &NOMP#", "RunID Parent: &NUMP#", "Nom du parent:
&TYPEP#"
114
Chapter 3 Organisation fonctionnelle
Rubriques connexes :
Elément de script
Description
:PUT_VAR_COL
Enregistre une valeur dans une colonne spécifique d'un objet Variable
statique.
:DELETE_VAR
Supprime une ou toutes les valeurs d'un objet Variable statique.
GET_VAR
Indique la valeur d'un objet Variable.
:SET_SCRIPT_VAR
Définit les valeurs des Variables de script par accès indirect.
GET_SCRIPT_VAR
Indique les valeurs des Variables de script par accès indirect.
PREP_PROCESS_
VAR
Prépare le traitement d'une séquence de données (valeurs d'un objet
Variable).
Elément de script - Lecture ou modification d'objets
Variable
Exemples :
Affichages à l'aide de Cockpit
Maintenance de la base de données avec options
Exécution d'un MBean
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.9 :PUT_VAR_COL
Instruction de script : Enregistre une valeur dans une colonne spécifique d'un objet Variable statique.
Syntaxe
:PUT_VAR_COLVariable, [Clé], Colonne, Valeur
Elément de syntaxe
Description/format
Variable
Nom de la Variable UC4 à laquelle une valeur doit être attribuée.
Format : Nom UC4 ou Variable de script
Clé
Lignes dans lesquelles la valeur doit être enregistrée.
Format : littéral de script, Variable de script ou fonction script
Colonne
Numéro de la colonne dans laquelle la valeur est saisie.
Format : littéral de script, Variable de script ou nombre sans guillemets simples
Valeurs autorisées : "1" à "5"
Valeur
Valeur qui doit être inscrite dans la ligne et la colonne indiquées de la Variable.
Format : Littéral de script ou Variable de script
Remarques
Cette fonction script insère une valeur déterminée dans la ligne et la colonne indiquées dans un objet
Variable. Contrairement à l'élément de script :PUT_VAR, les autres champs ne sont pas affectés. Si une
Automation Engine
115
entrée existe déjà dans la ligne/colonne indiquée, cette valeur est remplacée.
Si une Variable dynamique est indiquée pour l'élément de script (Source: SQL, SQL interne, Multi ou
Type de données), cela entraîne une erreur de durée d'exécution. Seuls des objets Variable statique
peuvent être remplis avec :PUT_VAR_COL.
Lors de l'indication du numéro de colonne, veuillez noter que les objets Variable de type "statique" ne
possèdent que cinq colonnes de valeurs.
Lors de l'indication du numéro de colonne, la plage autorisée va de "1" (colonne de valeurs 1) à "5"
(colonne de valeurs 5). La valeur de la colonne Clé ne peut pas être modifiée par l'élément de script.
Le paramètre Clé n'est facultatif que lorsqu'une Variable statique est utilisée avec le paramètre "Plage
de validité" - "Aucune clé". Dans ce cas, la Variable ne possède qu'une clé (*).
Si la Clé indiquée n'est pas encore disponible, la saisie est recréée.
Exemple
Dans l'exemple suivant, le nom de la Tâche supérieure (Workflow) et le RunID spécifique sont
déterminés. Puis le RunID est inscrit sous le nom du Workflow dans la colonne 3 de l'objet Variable
"VARA.JOBP".
:SET&JOBP# = SYS_ACT_PARENT_NAME()
:SET&RUNID# = SYS _ACT_ME_NR()
:PUT_VAR_COL VARA.JOBP, &JOBP#, "3", &RUNID#
Rubriques connexes :
:PUT_VAR
Enregistre les valeurs dans un objet Variable statique.
:DELETE_VAR
Supprime une ou toutes les valeurs d'un objet Variable statique.
GET_VAR
Indique la valeur d'un objet Variable.
:SET_SCRIPT_VAR
Définit les valeurs des Variables de script par accès indirect.
GET_SCRIPT_VAR
Indique les valeurs des Variables de script par accès indirect.
PREP_PROCESS_
VAR
Prépare le traitement d'une séquence de données (valeurs d'un objet
Variable).
Elément de script - Lecture ou modification d'objets
Variable
Exemples :
Affichages à l'aide de Cockpit
Maintenance de la base de données avec options
Exécution d'un MBean
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.10 :REMOVE_ATT
Instruction de script : Supprime des destinataires d'un objet Alerte pendant l'exécution.
116
Chapter 3 Organisation fonctionnelle
Syntaxe
:REMOVE_ATT RECIPIENT, Destinataire
Elément de syntaxe
Description/format
RECIPIENT
Nom de l'attribut à supprimer.
Format : Nom UC4, Littéral de Script ou Variable de Script
Valeur autorisée : "RECIPIENT"
Destinataire
Nom d'un Utilisateur, d'un Groupe Utilisateur ou adresse e-mail
Format : littéral de script, Variable de script ou chiffre
Vous pouvez utiliser les caractères génériques "*" et "?" dans les noms
d'utilisateur ou de Groupe Utilisateur. "*" signifie n'importe quelle chaîne de
caractères et "?" exactement un caractère.
Remarques
Cette instruction de Script ne peut être utilisée que dans l'onglet Traitement d'un objet Alerte Elle
supprime l'Utilisateur ou le Groupe Utilisateur indiqué de la liste des Destinataires.
Les destinataires saisis ne sont pas supprimés de manière permanente, car l'instruction de Script ne
modifie pas l'objet Alerte. L'adaptation de la liste des destinataires s'applique uniquement à l'exécution de
celui-ci.
Faites attention, en utilisant les caractères généraux, à ne pas provoquer la suppression de tous les
destinataires responsables. Cela entraînerait l'interruption du traitement du Script et l'affichage d'un
message d'erreur.
Le Rapport affiche clairement le destinataire ayant supprimé l'instruction de Script.
Attention : l'Utilisateur doit être indiqué au formatNom d'utilisateur/département. Cela correspond au
nom de l'objet Utilisateur. Si l'Utilisateur n'est pas trouvé, le Script s'interrompt.
Exemples
Dans l'exemple, l'Utilisateur "BU/UC4" est supprimé de la liste des destinataires responsables.
:REMOVE_ATT RECIPIENT,"BU/UC4"
Le deuxième exemple supprime tous les Utilisateurs du département "UC4".
:REMOVE_ATT RECIPIENT,"*/UC4"
Dans le troisième exemple, le Groupe Utilisateur "ADMIN" est supprimé.
:REMOVE_ATT RECIPIENT,"ADMIN"
Rubriques connexes :
Elément de script
Description
:ADD_ATT
Ajoute des destinataires à un objet Alerte pendant l'exécution.
:PUT_ATT
Modifie la valeur d'un attribut pendant la génération.
Automation Engine
:PUT_ATT_APPEND
Ajoute un élément au texte du message de l'Alerte pendant l'exécution.
GET_ATT
Indique la valeur des attributs d'une Tâche pendant la génération.
GET_ATT_SUBSTR
Indique une partie du texte du message de l'Alerte.
117
Elément de script - Lecture ou modification d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.11 :REPLACE_STRUCTURE
Instruction de script : Remplace la structure d'un Workflow lors de son activation par la structure d'un
autre Workflow.
Syntaxe
:REPLACE_STRUCTURE OBJ[ECT]=Workflow
Elément de syntaxe
Description/format
Workflow
Nom du Workflow dont la structure doit être utilisée.
Format : Littéral de script ou Variable de script
Remarques
L'instruction de script permet de remplacer, pendant l'activation, la structure d'un Workflow particulier par
la structure d'un autre Workflow. Autrement dit, le contenu de l'onglet "Workflow" est remplacé. Une erreur
de durée d'exécution se produit lorsque le Workflow indiqué est introuvable.
La modification de la structure du Workflow s'applique uniquement à l'exécution actuelle et n'affecte pas
l'objet Workflow.
Si vous lancez l'exécution d'un Workflow dans les statistiques, le moniteur affiche le Workflow dont la
structure a été utilisée.
Il ne faut pas utiliser l'instruction de script lorsque les modifications, par exemple lors de la définition
des dépendances de calendrier, entraînent également des conditions temporelles dans les scripts
Exemple
Dans l'exemple, le Workflow "GS.JOUR" doit être lancé une seule fois le 31.12.2005 avec une structure
de Workflow modifiée. Le Workflow modifié est exécuté dans le Workflow original avec les lignes de script
suivantes.
:IF "051231" = SYS_LDATE()
:
REPLACE_STRUCTURE OBJECT="GS.JOUR.MOD.051231"
:ENDIF
Rubriques connexes :
118
Chapter 3 Organisation fonctionnelle
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.12 :SET_CALE
Instruction de script : :SET_CALE - Ajoute ou supprime une date ou une période du Calendrier.
Syntaxe
:SET_CALEGroupe calendrier, Calendrier,date1[,date2[,action]]
Elément de syntaxe
Description/format
Groupe Calendrier
Nom de l'objet Groupe Calendrier dans lequel ajouter ou supprimer une date
ou une période.
Format : Nom UC4, Littéral de script ou Variable de script
Calendrier
Nom du Calendrier dans lequel ajouter ou supprimer une date ou une période.
Format : nom UC4, littéral de script ou Variable de script
Date1
Date2
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
Action
Indicateur pour l'ajout ou la suppression.
Format : nom UC4, littéral de script ou Variable de script
Valeurs autorisées : "ON" (par Défaut), "OFF"
"ON" - Ajouter une Date/Période
"OFF" - Retirer une Date/Période
Remarques
L'instruction de script vous permet d'ajouter une date/période à un objet Groupe Calendrier et de supprimer
une date/période d'un Groupe Calendrier.
Si une seule date doit être ajoutée ou supprimée, la donnée Date2 n'est plus nécessaire. Pour une période,
il faut indiquer Date1 et Date2.
L'indication du format de date est facultative. Si aucun format de date n'est utilisé, la date doit être
indiquée au format "AAMMJJ" ou "AAAAMMJJ".
Si aucun Calendrier n'est indiqué, l'instruction de script crée un nouveau Calendrier de type "Statique". La
plage de validité par défaut est l'année courante moins NOW_MINUS, plus NOW_PLUS. Les deux
paramètres sont des clés configurées par l'administrateur UC4 dans la Variable UC4 UC_CLIENT_
SETTINGS. Vous pouvez néanmoins modifier ensuite la période de validité avec la fonction de script
MODIFY_OBJECT.
L'instruction de script ignore le fait qu'une date/période existe déjà en cas d'ajout, ou qu'aucune n'existe en
cas de suppression.
La fonction de script VALID_CALE vous permet de vérifier si une date est indiquée dans le Calendrier.
Automation Engine
119
Attention : il ne faut pas que l'instruction de script déclenche un calcul dynamique de calendrier ! L'objet
Groupe Calendrier doit être ouvert et enregistré manuellement !
Exemples
Dans le premier exemple, une date est ajoutée à l'objet Groupe Calendrier "DISPOSITION" et au
Calendrier "BU".
:SET_CALE DISPONIBILITE, "BU", "AA-MM-JJ:01-12-24"
Le deuxième exemple supprime la date d'aujourd'hui de cet objet Groupe Calendrier.
:SET &AUJOURD'HUI# = SYS_DATE()
:SET_CALE "DISPONIBILITE","BU",&AUJOURD'HUI#,, OFF
Le troisième exemple transmet le début et la fin de la semaine courante. Cela a pour effet d'établir la
période dans l'objet Groupe Calendrier.
:SET &AUJOURD'HUI# = SYS_DATE()
:SET &DEBUT# = FIRST_OF_PERIOD (&AUJOURD'HUI#, "WW")
:SET &FIN# = LAST_OF_PERIOD (&AUJOURD'HUI#, "WW")
:SET_CALEDISPONIBILITE, BU, &DEBUT#, &FIN#
Rubriques connexes :
Elément de script
Description
VALID_CALE
Vérifie qu'une date est contenue dans un Calendrier.
Elément de script - Lecture ou modification d'objets
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.13 :SET_CONDITION
Instruction de script : Définit l'heure de début la plus ancienne dans les Workflows.
Syntaxe
:SET_CONDITION Condition[= Valeur]
Elément de syntaxe
Description/format
Condition
Condition de démarrage devant être définie.
Format : Littéral de script ou Variable de script
Valeurs autorisées : "EARLIEST_START_TIME", "JOBP_EARLIEST_
START_TIME"
"EARLIEST_START_TIME" = Heure de début la plus ancienne d'une Tâche
dans le Workflow.
"JOBP_EARLIEST_START_TIME" = Heure de début la plus ancienne d'un
Workflow.
120
Chapter 3 Organisation fonctionnelle
Valeur
Heure de début la plus ancienne devant être définie.
Format : Littéral de script ou Variable de script
Format : "JJ/HH:MM"
Valeur par défaut : "00/00:00"
Remarques
L'instruction de script fonctionne uniquement dans un Workflow.
L'heure de début la plus ancienne définie avec la fonction s'applique uniquement à l'exécution actuelle de
l'objet. La marque horaire réglable dans les propriétés de la Tâche n'est pas modifiée. L'heure de début la
plus ancienne peut également être transmise lors de l'exécution à la fonction de script GET_CONDITION.
Pour définir l'heure de début la plus ancienne, les corrélations suivantes s'appliquent :
l
l
l
L'instruction de script "EARLIEST_START_TIME" définit l'heure de début la plus ancienne de la
Tâche dans laquelle le script est exécuté. Cette instruction de script n'est pas autorisée lorsque
l'option "Générer à l'Exécution" (onglet Attributs) est définie pour la Tâche. Dans ce cas, la Tâche
a déjà été lancée lors du traitement du script.
L'instruction de script "JOBP_EARLIEST_START_TIME", utilisée dans le script d'une Tâche,
définit l'heure de début la plus ancienne du Workflow. Cette instruction de script n'est pas non plus
autorisée avec l'option "Générer à l'Exécution".
L'instruction de script "JOBP_EARLIEST_START_TIME" ne peut être utilisée dans le script d'un
Workflow que pour définir l'heure de début la plus ancienne d'un Workflow supérieur. Une erreur se
produit s'il n'existe pas de Workflow supérieur.
Pour l'heure de début la plus ancienne du Workflow, il s'agit de chaque moment qui a été enregistré
dans la case DEBUT du Workflow.
Exemple
L'exemple montre l'instruction de script dans le script d'une Tâche exécutée dans un Workflow. L'heure de
début la plus ancienne de la Tâche et du Workflow est définie et générée dans le protocole d'activation.
:SET_CONDITION "EARLIEST_START_TIME"="00/10:19"
:SET_CONDITION "JOBP_EARLIEST_START_TIME"="00/10:18"
:SET &RETJOBS# = GET_CONDITION ("EARLIEST_START_TIME")
:SET &RETJOBP# = GET_CONDITION ("JOBP_EARLIEST_START_TIME")
:PRINT "Nouvelle heure de début la plus ancienne:",&RETJOBS#
:PRINT "Nouvelle heure de début la plus ancienne du Workflow:", &RETJOBP#
Rubriques connexes :
Elément de script
Description
GET_CONDITION
Indique l'heure de début la plus ancienne des Workflows.
Elément de script - Lecture ou modification d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
Automation Engine
121
3.4.14 :XML_CLOSE
Instruction de script : Fermeture d'un document XML.
Syntaxe
:XML_CLOSE
Remarques
Cette instruction de Script ferme un document XML une fois le traitement effectué.
Il faut d'abord appeler cette instruction de Script avant de pouvoir ouvrir un autre document XML en vue du
traitement avec XML_OPEN.
Dans la version 6.00A, cette instruction de Script a été renommée de :XML_CLOSE_DOCU en :XML_
CLOSE. L'ancien style d'écriture est toujours pris en charge.
Exemple
L'onglet "Détails" d'une documentation structurée a été fermé après un traitement réussi.
:SET &XMLDOCU# = XML_OPEN("GS.JOUR", "@Détails")
!...
:XML_CLOSE
Rubriques connexes :
Elément de script
Description
XML_OPEN
Ouvre un document XML en vue du traitement.
Elément de script - Lecture ou modification d'objets
Documentation structurée
www.w3c.org/TR/xmlbase
Exemples
Détermination du message d'erreur et du numéro de l'erreur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.15 GET_ATT
Fonction script : Indique la valeur des attributs d'une Tâche pendant la génération.
Syntaxe
GET_ATT(Attribut)
Elément de syntaxe
Description/format
122
Chapter 3 Organisation fonctionnelle
Attribut
Nom de l'attribut dont la valeur doit être lue.
Format : Nom UC4, Littéral de script ou Variable de script
Code retour
Valeur de l'attribut indiqué.
Remarques
La fonction de script GET_ATT permet de lire l'attribut indiqué d'un objet pendant la génération. Seuls
peuvent être utilisés les attributs qui appartiennent à cet objet.
Vous trouverez la liste des attributs de tous les objets (et les valeurs correspondantes possibles) dans
le manuel de l'Utilisateur.
Les attributs spécifiques pour les Jobs RA s'affichent sous forme d'infobulle pour les champs
correspondants de l'interface Utilisateur. Exemple : Job FTP RA, onglet: "FTP", infobulle pour le champ
"Agent à distance connecté": ftpConnectionName. Pour faire apparaître l'infobulle, bougez le pointeur de
la souris sur le champ/élément de contrôle dans l'interface Utilisateur et attendez un court instant.
Attention : la valeur d'un attribut peut également être une espace " " ! Cela se produit lorsqu'aucune
valeur n'a été définie (par exemple: la zone de texte de l'index d'archivage est vide).
Si la Tâche s'exécute dans un Groupe Agent, alors la fonction GET_ATT(HOST) renvoie le nom de
l'Agent sur lequel la Tâche est réellement exécutée, et non le nom du Groupe Agent.
Si vous indiquez le nom d'une Variable de script ou d'objet en tant qu'attribut dans l'objet (voir : Lecture
et modification d'attributs), la lecture de l'attribut à l'aide de la fonction GET_ATT() renvoie non pas le nom
de la Variable mais le contenu de la Variable indiquée. Si vous ne souhaitez pas que les Variables soient
résolues, utilisez le script GET_ATT_PLAIN.
Exemples
L'exemple détermine le premier index d'archivage d'un objet et le transmet à une Variable de script.
:SET &DEBUT# = GET_ATT(ARCHIVE_KEY1)
On peut également utiliser une Variable de script au sein de la fonction.
:SET &ATT# = "JOBREPORT_FILE"
:SET &START# = GET_ATT(&ATT#)
Dans cet exemple, la fonction est utilisée pour formuler une condition.
:IF GET_ATT(GROUP) = " "
!...
:ENDIF
Exemple d'utilisation d'une Variable de script dans le champ Attribut d'un objet. La Variable "&DST#" est
indiquée en tant que fichier cible d'un objet Transfert de Fichier. Le script suivant permet de définir
l'attribut, d'attribuer une valeur à la Variable et de lire l'attribut. La valeur renvoyée ne correspond pas au
nom de la Variable "&DST#", mais à la valeur de la Variable "C:\Temp\test2.txt".
:PUT_ATT FT_DST_FILE="&&DST#"
:SET &DST# = "C:\Temp\test2.txt"
:SET &ZIEL# = GET_ATT(FT_DST_FILE)
:PRINT "Fichier cible : &CIBLE#"
Automation Engine
123
Rubriques connexes :
Elément de
script
Description
:ADD_ATT
Ajoute des destinataires à un objet Alerte pendant l'exécution.
:REMOVE_ATT
Supprime des destinataires d'un objet Alerte pendant l'exécution.
:PUT_ATT
Modifie la valeur d'un attribut pendant la génération.
:PUT_ATT_
APPEND
Etend le texte du message de l'Alerte pendant l'exécution.
GET_ATT_PLAIN
Indique la valeur des attributs d'une Tâche pendant la génération sans suppression
des Variables.
GET_ATT_
SUBSTR
Indique une partie du texte du message de l'Alerte.
Elément de script - Lecture ou modification d'objets
Exemples
Alerte avec texte du message variable
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.16 GET_ATT_PLAIN
Fonction script : Indique la valeur des attributs d'une Tâche pendant la génération sans suppression des
Variables.
Syntaxe
GET_ATT_PLAIN(Attribut)
Elément de syntaxe
Description/format
Attribut
Nom de l'attribut dont la valeur doit être lue.
Format : Nom UC4, Littéral de script ou Variable de script
Code retour
Valeur de l'attribut indiqué.
Remarques
Cette fonction script permet de lire les attributs de l'objet pendant le processus de génération. Le
comportement est similaire à celui du Script GET_ATT. Il diffère toutefois en ce que les Variables de
Script, d'objet et prédéfinies ne sont pas remplacées dans l'attribut. C'est donc le nom de la Variable, et
non sa valeur, qui est déterminé. Ces Variables sont toujours résolues pour le Script GET_ATT.
Les caractères de remplacement des objets Variables indiqués entre parenthèses { } ne sont pas
remplacés par un des deux Scripts.
124
Chapter 3 Organisation fonctionnelle
A partir de la version 9.00A, le Dialogue des attributs lit les attributs avec cette fonction script. Le
contenu réel de l'attribut est maintenant toujours affiché dans le dialogue et non plus la valeur remplacée
par des Variables.
Attention : consultez également les remarques contenues dans la description de GET_ATT.
Exemple
Dans l'exemple suivant, le nom d'une Variable de Script est indiqué dans un attribut ; une valeur doit lui
être attribuée. Le contenu de l'attribut est ensuite déterminé avec et sans valeur de Variable de
remplacement et les informations sont émises dans le protocole d'activation.
:PUT_ATT INT_ACCOUNT = "&&test#"
:SET&test# = "test"
:SET&att# = GET_ATT(INT_ACCOUNT)
:SET&attplain# = GET_ATT_PLAIN(INT_ACCOUNT)
:PRINT"Nom Variable = &attplain#"
:PRINT"Valeur Variable = &att#"
Rubriques connexes :
Elément de script
Description
:ADD_ATT
Ajoute des destinataires à un objet Alerte pendant l'exécution.
:REMOVE_ATT
Supprime des destinataires d'un objet Alerte pendant l'exécution.
:PUT_ATT
Modifie la valeur d'un attribut pendant la génération.
:PUT_ATT_APPEND
Etend le texte du message de l'Alerte pendant l'exécution.
GET_ATT
Indique la valeur des attributs d'une Tâche pendant la génération.
GET_ATT_SUBSTR
Indique une partie du texte du message de l'Alerte.
Elément de script - Lecture ou modification d'objets
Exemples
Alerte avec texte du message variable
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.17 GET_ATT_SUBSTR
Fonction script : Indique une partie du texte du message de l'Alerte.
Syntaxe
GET_ATT_SUBSTR(CALL_TEXT, début, longueur)
Elément de syntaxe
Description/format
CALL_TEXT
Nom de l'attribut dont la valeur doit être partiellement lue.
Format : nom UC4 ou Variable de script
Valeur autorisée : "CALL_TEXT"
Automation Engine
Début
Position à laquelle la lecture doit commencer.
Format : nombre ou Variable de script Longueur
Nombre de caractères devant être lus.
Format : nombre ou Variable de script 125
Codes retour
Partie du texte du message.
" " : la zone indiquée ne se trouve pas dans le texte du message.
Remarques
Cette fonction de script peut être utilisée seulement dans l'onglet Traitement d'un objet Alerte. Elle
détermine une partie du texte du message de l'Alerte.
Lorsque l'instruction :PUT_ATT_APPEND se trouve avant la fonction de script, la partie est extraite du
texte du message développé.
Exemple
Dans l'exemple, les 20 premiers caractères du texte du message sont lus.
:SET &EXTRAIT# = GET_ATT_SUBSTR(CALL_TEXT,1,20)
Rubriques connexes :
Elément de script
Description
:ADD_ATT
Ajoute des destinataires à un objet Alerte pendant l'exécution.
:REMOVE_ATT
Supprime des destinataires d'un objet Alerte pendant l'exécution.
:PUT_ATT
Modifie la valeur d'un attribut pendant la génération.
:PUT_ATT_APPEND
Etend le texte du message de l'Alerte pendant l'exécution.
GET_ATT
Indique la valeur des attributs d'une Tâche pendant la génération.
Elément de script - Lecture ou modification d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.18 GET_CONDITION
Fonction script : Indique l'heure de début la plus ancienne des Workflows.
Syntaxe
GET_CONDITION(condition)
Elément de syntaxe
Description/format
126
Chapter 3 Organisation fonctionnelle
Condition
Condition de démarrage devant être déterminée.
Format : Littéral de script ou Variable de script
Valeurs autorisées : "EARLIEST_START_TIME", "JOBP_EARLIEST_
START_TIME"
"EARLIEST_START_TIME" = Heure de début la plus ancienne d'une Tâche
dans le Workflow.
"JOBP_EARLIEST_START_TIME" = Heure de début la plus ancienne d'un
Workflow.
Code retour
Heure de début la plus ancienne au format "JJ/HH:MM" de la Tâche ou du Workflow.
Remarques
La fonction de script ne peut qu'être définie dans le cadre d'un Workflow.
L'heure de début la plus ancienne peut être définie dans les propriétés de la Tâche et dans la case DEBUT
d'un Workflow. Elle peut également être définie pour le temps d'exécution à l'aide de l'instruction de script
:SET_CONDITION.
Pour transmettre l'heure de début la plus ancienne, les points suivants s'appliquent :
l
l
l
"EARLIEST_START_TIME" permet à la fonction de script de transmettre l'heure de début la plus
ancienne de la Tâche dans le script de laquelle elle est exécutée.
Si la fonction de script est utilisée avec "JOBP_EARLIEST_START_TIME" dans le script d'une
Tâche, elle renvoie l'heure de début la plus ancienne du Workflow.
Dans le script d'un Workflow, la fonction de script ne peut qu'être utilisée avec "JOBP_
EARLIEST_START_TIME" lorsque ce Workflow est exécuté dans un Workflow supérieur. L'heure
de début la plus ancienne du Workflow supérieur est retournée. Une erreur se produit s'il n'existe
pas de Workflow supérieur.
Pour l'heure de début la plus ancienne du Workflow, il s'agit de chaque moment qui a été enregistré
dans la case DEBUT du Workflow.
Exemple
Par exemple, on utilise dans le script d'une Tâche la fonction de script qui s'exécute dans un Workflow.
L'heure de début la plus ancienne de la Tâche et du Workflow est déterminée et affichée dans le protocole
d'activation.
:SET &RETJOBS# = GET_CONDITION ("EARLIEST_START_TIME")
:SET &RETJOBP# = GET_CONDITION ("JOBP_EARLIEST_START_TIME")
:PRINT "Heure de début la plus ancienne de la Tâche :", &RETJOBS#
:PRINT "Heure de début la plus ancienne du Workflow :", &RETJOBP#
Automation Engine
Rubriques connexes :
Elément de script
Description
:SET_CONDITION
Définit l'heure de début la plus ancienne dans les Workflows.
Elément de script - Lecture ou modification d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.19 GET_OBJECT_TYPE
Fonction script : Indique le type d'objet de la Tâche.
Syntaxe
GET_OBJECT_TYPE(nom d'objet)
Elément de syntaxe
Description/format
Nom d'objet
Nom de l'objet dont le type doit être déterminé
Format : littéral de script ou Variable de script
Codes retour
Forme abrégée du type d'objet
"20223" - L'objet n'existe pas.
127
128
Chapter 3 Organisation fonctionnelle
Remarques
La fonction script recherche tout d'abord l'objet dans le Client sur lequel le script est exécuté, puis dans le
Client système 0000.
L'instruction de script :ON_ERROR permet de définir la réaction en cas de nom d'objet erroné. Vous
pouvez analyser l'erreur avec les fonctions de script pour le traitement des erreurs. Le traitement du script
se poursuit. Toutefois, vous avez également la possibilité de l'interrompre.
Exemple
En effet, GS.JOUR est un objet de type "Workflow".
:SET &TYPE_OBJET# = GET_OBJECT_TYPE("GS.JOUR")
Rubriques connexes :
Elément de script - Lecture ou modification d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.20 GET_OH_IDNR
Fonction script : Indique le numéro interne d'un objet.
Syntaxe
GET_OH_IDNR(nom de l'objet, Client )
Elément de syntaxe
Description/format
Nom d'objet
Nom de l'objet
Format : Littéral de script ou Variable de script
Client
Numéro du Client dans lequel se trouve l'objet
Format : nombre ou Variable de script Code retour
Numéro interne de l'objet
"0" - L'objet n'existe pas.
Remarques
Chaque objet reçoit un numéro interne lors de sa création.
Automation Engine
129
Exemple
L'exemple suivant génère le numéro interne de l'objet "MAWI.TAG" se trouvant dans le Client 98.
:SET &RET# = GET_OH_IDNR("MAWI.TAG",98)
Rubriques connexes :
Elément de script - Lecture ou modification d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.21 GET_STATISTIC_DETAIL
Fonction script : Détermine les détails à partir d'un enregistrement statistique d'un objet activable.
Syntaxe
GET_STATISTIC_DETAIL([RunID] , Detail [, nom d'objet])
Elément de
syntaxe
Description/format
RunID
Numéro courant de l'exécution (RunID) à 10 caractères
Format : Variable de script ou chiffre
Détail
Information qui doit être déterminée à partir de l'enregistrement statistique.
Format : nom UC4, littéral de script ou Variable de script
Vous trouverez, dans les remarques, un tableau récapitulant les valeurs
autorisées.
Nom d'objet
Nom de l'objet dont l'enregistrement statistique doit être lu.
Format : Littéral de script ou Variable de script
Code retour
Détail issu d'un enregistrement statistique
Remarques
Attention : Les Utilisateurs doivent utiliser l' Autorisation "S" pour chaque objet, afin de pouvoir
exécuter cette fonction script.
La fonction script peut être utilisée dans les configurations suivantes :
l
l
l
RunID, Détails ou RunID, Détails, nom d'objet
Le RunID permet d'identifier clairement l'enregistrement statistique à lire.
Détails, nom d'objet
Le dernier enregistrement statistique de l'objet indiqué est lu.
Détails
L'enregistrement statistique actuel de l'objet à partir duquel la fonction script est appelée est utilisé
130
Chapter 3 Organisation fonctionnelle
pour déterminer les détails. Certaines valeurs ne sont donc pas encore disponibles (comme la
durée de traitement du script).
Formulez la fonction script avec précaution. Pour les valeurs qui ne peuvent pas encore être
déterminées au moment de l'exécution du script, les valeurs par défaut suivantes sont renvoyées :
l
l
l
Pour les chaînes de caractères : " "
Pour les nombres : 0
Pour les dates et la marque horaire : 0000-00-00 00:00:00
Il peut, toutefois, également s'agir de valeurs issues des détails statistiques lus (par exemple: Code retour
0) !
Si aucun enregistrement statistique n'est trouvé, la fonction script renvoie une chaîne vide. Cela ne
provoque pas l'interruption du script ! L'erreur peut cependant être interceptée avec le script :ON_ERROR.
Le deuxième paramètre nécessite l'indication du détail statistique à lire. Le tableau suivant vous indique
quelles valeurs peuvent être déterminées :
Détail
Description
ACCOUNT
Compte interne
ACTIVATION_TIME
Date et heure de l'activation au format "AAAA-MM-JJ HH:MM:SS"
ARCHIVE_KEY_1
Index d'archivage 1
ARCHIVE_KEY_2
Index d'archivage 2
CANCEL_FLAG
Interruption de la Tâche
Codes retour :
" " - La Tâche n'a pas été interrompue
"m" - La Tâche a été interrompue manuellement
CHECK_COUNT
Nombre de vérifications de l'objet Evènement
COMPRESSION_RATE
Niveau de compression
Codes retour :
"0" - Aucun
"1" - Normal
"2" - Renforcé
" " - Valeur par défaut
CPU_TIME
Temps CPU utilisé
DST_CODE_TABLE
Nom de la Table de Codes cible pour les Transferts de Fichiers
DST_FILE_ATTRIBUTES
Attributs du fichier cible pour les Transferts de Fichiers
DST_FILE_NAME
Nom du fichier cible pour les Transferts de Fichiers
DST_HOST
Nom de l'Agent cible pour les Transferts de Fichiers et les Jobs
DST_HOST_TYPE
Type d'hôte de l'Agent cible pour les Transferts de Fichiers
Codes retour :
"BS2000", "GCOS8", "MPE", "MVS", "NSK", "OS400", "UNIX", "VMS"
et "WINDOWS"
DST_LOGIN_INFO
Ensemble des infos de connexion de l'objet Login cible du Transfert de
Fichier
DST_LOGIN_NAME
Nom de l'objet Login cible
Automation Engine
131
DURATION
Durée d'exécution en secondes
END_TIME
Heure de fin de l'objet au format "AAAA-MM-JJ HH:MM:SS"
EVENTID
Premier RunID des Evènements de systèmes de fichiers ou de console
FILE_SIZE
Nombre d'octets du fichier transféré
IO_COUNT
Nombre d'entrées/de sorties
KERNEL_TIME
Temps système utilisé
LAST_ERR_INS
Insertion de message
LAST_ERR_NR
Numéro de la dernière erreur qui s'est produite
LAST_RESTART_POINT
Dernier point de reprise exécuté
LDATE
Date logique au format "AAAA-MM-JJ HH:MM:SS"
MOD_COUNT
Nombre de modifications apportées à l'objet
NAME
Nom de l'objet
OBJECT_TYPE
Type d'objet
OCCURENCE_COUNT
Nombre d'Evènements survenus (pour les objets Evènement)
PARENT_ACT
RunID de la Tâche parent (activator)
PARENT_PRC
RunID de la Tâche parent (processor)
POSTSCRIPT_START_
TIME
Heure de début du post traitement au format "AAAA-MM-JJ HH:MM:SS"
PROCESS_ID
N° TSN/processus
RECORDS
Transferts de fichiers texte : nombre de lignes ou d'enregistrements
transférés.
Transferts de fichiers binaires : 0
REFERENCE_NR
RunID de référence pour la reprise
RESTART
Reprise
Codes retour :
"Y" - Il s'agit d'une reprise.
"N" - Il ne s'agit pas d'une reprise.
RESTART_POINT
Point de reprise à partir duquel la Tâche est démarrée
RETURN_CODE
Code retour
RUNID
RunID de l'enregistrement statistique sélectionné
SRC_CODE_TABLE
Nom de la Table de Codes source pour les Transferts de Fichiers
SRC_FILE_ATTRIBUTE
Attributs du fichier source pour les Transferts de Fichiers
SRC_FILE_NAME
Nom du fichier source pour les Transferts de Fichiers
SRC_HOST
Nom de l'Agent source pour les Transferts de Fichiers
SRC_HOST_TYPE
Type d'hôte de l'Agent source pour les Transferts de Fichiers
Codes retour :
"BS2000", "GCOS8", "MPE", "MVS", "NSK", "OS400", "UNIX", "VMS"
et "WINDOWS"
SRC_LOGIN_INFO
Ensemble des infos de connexion de l'objet Login source du Transfert de
Fichier
132
Chapter 3 Organisation fonctionnelle
SRC_LOGIN_NAME
Nom de l'objet Login source
START_TIME
Heure de début de l'objet au format "AAAA-MM-JJ HH:MM:SS"
STATUS
Statut (code retour système) de l'exécution (par exemple, "1850")
TRANSFERRED_BYTE_
COUNT
Nombre d'octets transférés
USER_ID
Nom d'utilisateur au format "NOM/DEPARTEMENT"
USER_TIME
Temps utilisateur utilisé
Exemple
La ligne suivante est utilisée dans un objet Transfert de Fichier. Elle lit le nom du fichier à transférer dans
l'exécution actuelle.
:SET &FICHIERSOURCE# = GET_STATISTIC_DETAIL(,SRC_FILE_NAME)
Dans ce deuxième exemple, c'est l'heure de début de la Tâche parent qui est lue.
:SET &NOM# = SYS_ACT_PARENT_NAME()
:SET &DEBUT# = GET_STATISTIC_DETAIL(,START_TIME,&NOM#)
Dans cet exemple, la fonction script détermine l'heure d'activation de l'objet GS.JOUR.
:SET &NUMRUN# = GET_UC_OBJECT_NR("GS.JOUR")
:SET &ACTIVATION# = GET_STATISTIC_DETAIL(&NUMRUN#, ACTIVATION_TIME)
Rubriques connexes :
Elément de script - Lecture ou modification d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.22 GET_SYNC
Fonction script : Demande le statut ou la valeur actuelle d'un objet Sync.
Syntaxe
GET_SYNC(Sync, type)
Elément de syntaxe
Description/format
Sync
Nom d'un objet Sync dont le statut ou la valeur actuel(le) doit être déterminé
(e).
Format : Nom UC4, Littéral de script ou Variable de script
Type
Indique si le statut actuel ou la valeur actuelle doit être déterminé(e).
Format : nom UC4, littéral de script ou Variable de script
Valeurs autorisées : "STATE" et "VALUE"
"STATE": statut actuel
"VALUE" : valeur actuelle
Automation Engine
133
Codes retour
Statut actuel de l'objet Sync.
Valeur actuelle de l'objet Sync.
Remarques
La fonction de Script indique les paramètres actuels d'un objet Sync qui se trouvent aussi dans l'onglet
"Attributs".
Exemple
Les lignes de Script suivantes font référence à l'exemple Utilisation de Sync pour accéder aux Jobs.
:SET &ADMIN# = GET_SYNC("DB.STATUS","STATE")
:IF &ADMIN# = "EXCLUSIF"
: PRINT "Le Job administrateur utilise actuellement la base de données de
manière exclusive."
:ENDIF
:SET &RET# = GET_SYNC("DB.STATUS","VALUE")
:IF &RET# = 0
:
PRINT "Aucun Job n'accède actuellement à la base de données."
:ELSE
:
PRINT "Des Jobs &RET# accèdent en ce moment à la base de données."
:ENDIF Rubriques connexes :
Elément de script
Description
SET_SYNC
Exécute l'action définie d'un objet Sync.
:ATTACH_SYNC
Attribue un objet Sync à une Tâche.
Elément de script - Lecture ou modification d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.23 GET_VAR
Fonction script : Indique la valeur d'un objet Variable.
Syntaxe
GET_VAR(Variable [, [ Clef ] [, Colonne] ])
Elément de syntaxe
Description/format
Variable
Nom d'une Variable UC4 dont les valeurs doivent être lues.
Format: Nom UC4, Littéral de script ou Variable de script
134
Chapter 3 Organisation fonctionnelle
Clé
Lignes de valeur
de la Variable de la colonne Clef (Variables statiques) ou de la première
colonne vide (Variable dynamique)
Format: Nom UC4, Littéral de script ou Variable de script
Colonne
Numéro de la colonne dont les valeurs doivent être utilisées.
Format: littéral de script, Variable de script ou nombre sans guillemets
simples
Valeurs autorisées :
Variables statiques : "KEY" (colonne Clef), de "1" à "5" (Colonne de valeurs
de 1 à 5)
Variables dynamiques: "RESULT" (colonne Résultat), de "1" à n (Colonne de
valeurs 1 à n)
Codes retour
Valeur/s de la Variable
" " - L'entrée n'existe pas ou ne contient pas de valeur.
Remarques
Les valeurs peuvent être lues avec le script tant à partir d'objets de Variables statiques que dynamiques.
Lors de l'accès aux Variables dynamiques, une résolution s'effectue, ainsi la valeur est déterminée
directement par la source de données (base de données, variable, répertoire).
Si pour une quelconque raison, une erreur survient lors de la résolution d'objets de Variables
dynamiques, cela entraîne une erreur de durée d'exécution!
Si le paramètre Clef n'est pas indiqué, la première ligne est automatiquement utilisée. Pour les objets de
Variables statiques dont le domaine de validité est défini comme "Index libre", il faut toutefois toujours
indiquer une Clef!
S la colonne manque, la colonne Valeur 1 (pour les objets Variable statiques) utilise automatiquement la
colonne résultats (Source de Variables : SQL, SQL interne, Multi) ou bien la colonne Liste fichiers
(Source de Variables : liste de fichiers).
Pour les Variables dont la source Liste de fichiers, soit il faut omettre la colonne ou bien utiliser la
valeur "1". Comme il n'existe qu'une colonne, la Clef indiquée comprend la valeur retournée.
Comme valeur pour colonne le domaine de 1 (première colonne de valeur) au dernier numéro de colonne de
la Variable est autorisé. Attention: les Variables statiques possèdent au maximum 5 colonnes de valeur.
Pour lire la colonne de résultats (Variables dynamiques hormis la "Liste de fichiers"), il faut utiliser la valeur
"RESULT" pour colonne. Si le script est utilisé en relation avec :FILL et qu'aucune colonne n'est indiquée,
toutes les valeurs de la ligne de Variables sont enregistrées dans le tableau de script.
Le format de la valeur correspond au format de sortie qui est défini par l'onglet Attributs.
La fonction de script permet également de lire les variables de l'Agent.
Pour accéder à une Clef qui commence par le caractère &, il faut indiquer deux fois ce caractère. Sinon,
cette expression est interprétée comme une Variable de script et essaie de la résoudre.
Exemple: Accès à la clef "&clef" dans l'objet Variable VARA.TEST
:SET&TEST# = GET_VAR(VARA.TEST,"&&clef")
Automation Engine
135
Pour les Variables dynamiques, la valeur de la colonne résultat (Paramètre Clef) est indiquée dans le
format qui définit la valeur dans la source de données (base de données SQL, objet Variable MULTI). Le
format de sortie de la variable ne joue aucun rôle dans le processus!
Pour les Variables statistiques, il est possible d'indiquer la valeur spéciale "KEY" pour la colonne. Avec
cette dernière, vous avez la possibilité de vérifier si une clé existe dans l'objet Variable. Si l'élément de
script renvoie une valeur vide, la clé n'existe pas. Si la clé est renvoyée, alors l'entrée existe.
Dans l'exemple suivant, l'élément de script renvoie "Test" lorsque la clé existe, et "" dans le cas contraire :
:SET &KEY# = GET_VAR(VARA.TEST, "Test","KEY")
Exemples
L'exemple détermine la valeur d'une Variable et la transmet à une Variable de script.
:SET &TEST# = GET_VAR(GS_FIN, "Jour d'écriture")
On peut également utiliser une Variable de script au sein de la fonction.
:SET &VAR# = "GS_FIN"
:SET &GUELT# = "Jour d'écriture"
:SET &TEST# = GET_VAR(&VAR#, &GUELT#)
Dans cet exemple, la fonction est utilisée pour formuler une condition.
:IF GET_VAR(GS_FIN, "JOUR D'ECRITURE") = SYS_DATE("DDMMYY")
!...
:ENDIF
Rubriques connexes :
Elément de script
Description
:DELETE_VAR
Supprime une ou toutes les valeurs d'un objet Variable statique.
:PUT_VAR
Enregistre les valeurs dans un objet Variable statique.
:SET_SCRIPT_VAR
Définit les valeurs des Variables de script par accès indirect.
GET_SCRIPT_VAR
Indique les valeurs des Variables de script par accès indirect.
PREP_PROCESS_
VAR
Prépare le traitement d'une séquence de données (valeurs d'un objet
Variable).
Elément de script - Lecture ou modification d'objets
Variables Agent
Exemples :
Maintenance de la base de données avec options
Exécution d'un MBean
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.24 MODIFY_TASK
Fonction script : Modifie les Workflows en cours.
Informations générales
136
Chapter 3 Organisation fonctionnelle
La modification d'un Workflow en cours d'exécution se fait en plusieurs étapes, avec la fonction MODIFY_
TASK :
1.
2.
3.
4.
Arrêtez l'exécution du Workflow avec "STOP_MODIFY".
Faites vos modifications.
Activez celles-ci avec "COMMIT".
Redémarrez l'exécution du Workflow avec "GO".
Les paramètres de la fonction script doivent être organisés dans un certain ordre. Si vous omettez des
paramètres, il faut quand même indiquer les virgules correspondantes (voir les exemples suivants).
Utilisez "START" ou "END" pour modifier les propriétés des cases à cocher START ou END.
Attention : l'onglet Résultat (Propriétés du Workflow) n'existe plus à partir de la version 9.00A et ne
peut donc plus être modifié avec l'élément de script !
Le script ne permet pas d'arrêter ou de poursuivre l'exécution du propre Workflow, ni de le modifier par
la suite.
Codes retour
Automation Engine
137
Généralités :
"0" - Modifications réussies.
"9" - L'utilisateur n'est pas autorisé à modifier la Tâche indiquée à l'exécution.
"20437" - La marque horaire n'a pas été indiquée dans le format "JJ/HH:MM".
"20591" - Le Workflow avec ce RunID n'existe pas ou est inactif.
"20738" - La Tâche se trouve dans un statut dans lequel la modification ne peut pas être prise en
compte.
"20739" - La Tâche ne peut pas être modifiée, car elle est actuellement modifiée par un autre utilisateur.
"20740" - Indication d'un type d'objet non valide.
"20741" - Le numéro courant et/ou le nom entrés ne correspondent à aucune Tâche.
"20743" - La Tâche ne peut être modifiée, car le Workflow est toujours en cours d'exécution.
"20744" - La Tâche ne peut pas être modifiée, car elle ne se trouve dans aucun statut modifiable.
"20745" - La modification de la Tâche n'est pas admise, car la valeur n'est pas autorisée.
"20746" - L'ajout d'une dépendance est impossible, car elle existe déjà.
"20747" - La modification d'une dépendance est impossible, car elle se trouve dans aucun statut
modifiable.
"20748" - L'ajout d'une Tâche est impossible, car une autre Tâche se trouve déjà à cet emplacement.
"20749" - Le type d'objet de la Tache indiquée n'est pas admis.
"20750" - La fonction ne peut pas être exécutée pour la Tâche avec le RunID en raison d'une erreur
précédente.
"20752" - Une Tâche externe peut uniquement être remplacée par une autre Tâche externe.
"20753" - Il est impossible de remplacer <DEBUT> par <FIN>.
"20754" - <DEBUT> ne doit en aucun cas avoir de prédécesseur.
"20755" - <FIN> ne doit en aucun cas avoir de successeur.
"20756" - Les Tâches externes ne doivent en aucun cas avoir de prédécesseurs.
"20757" - Une Tâche non valide a été indiquée lors de la modification d'une dépendance externe.
"20758" - Il est impossible d'indiquer des dépendances externes.
Avec ADD_TASK :
Numéro courant de la Tâche à ajouter dans le Workflow
"0" - La Tâche n'a pu être ajoutée.
Avec REPLACE_TASK :
Numéro courant de la nouvelle Tâche dans le Workflow
"0" - La Tâche n'a pu être remplacée.
Start, Stop et Commit
Start, Stop et Commit] [Modifier la structure d'un Workflow] [Onglet Généralités] [Onglet "Au plus tôt"] [Onglet
"Dépendances"] [Onglet Exécution] [Onglet "Dépendance externe"]
Syntaxe
MODIFY_TASK (RunID, Statut [, FORCED] )
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) du Workflow activé
Format : littéral de script, chiffre ou Variable de script
138
Chapter 3 Organisation fonctionnelle
Statut
Statut du traitement devant être défini pour la Tâche
Format : nom UC4, littéral de script ou Variable de script
Valeurs autorisées : "COMMIT", "GO", "STOP" et "STOP_MODIFY"
"COMMIT" - Reprend les modifications sans démarrer le Workflow.
"GO" - Démarre le Workflow. Avec le paramètre FORCED, vous pouvez
forcer le démarrage même s'il est ouvert pour modification dans le Moniteur.
"STOP" - Arrête un Workflow.
"STOP_MODIFY" - Arrête un Workflow pour le modifier.
FORCED
A utiliser avec le paramètre "GO". FORCED démarre un Workflow arrêté
même si elle est ouverte pour modification dans le Moniteur. Les éventuelles
modifications effectuées entre-temps par un autre Utilisateur sont perdues.
Remarques
La fonction script modifie le statut de Traitement du Workflow.
Exemples
Le Workflow "GS.JOUR" est arrêté pour modification.
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RET# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
Le Workflow "GS.JOUR" est redémarré.
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RET# = MODIFY_TASK(&RUNID#, GO, FORCED)
Modification d'un Workflow
[Start, Stop et Commit] [Modifier la structure d'un Workflow [Onglet Généralités] [Onglet "Au plus tôt"] [Onglet
"Dépendances"] [Onglet Exécution] [Onglet "Dépendance externe"]
Syntaxe
MODIFY_TASK (RunID, Nom de l'objet,, ADD_TASK [, EXTERNAL [, Nom du Workflow]] )
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) du Workflow activé
Format : littéral de script, chiffre ou Variable de script
Nom de l'objet
Nom de l'objet dans lequel le Workflow doit être inclus.
Format : littéral de script, chiffre ou Variable de script.
ADD_TASK
Ajoute une Tâche.
EXTERNAL
Ajoute une Tâche en tant que dépendance externe.
Nom du Workflow
Nom du Workflow dans lequel se trouve la dépendance externe
Format : littéral de script ou Variable de script
Automation Engine
139
Remarques
La fonction script ajoute au Workflow une Tâche ou une dépendance externe.
La Tâche est placée à un endroit libre du Workflow. Déplacez-la avec les fonctions MODIFY_TASK et
MOVE_TASK.
Attention, la Tâche ajoutée ne doit pas être reliée à d'autres Tâches. Tirez les lignes nécessaires en
exécutant MODIFY_TASK avec ADD_DEPENDENCY.
Attention, il faut mettre deux virgules après le paramètre Nom de l'objet. Le troisième paramètre est le
numéro courant d'une Tâche dans le Workflow. Il n'a aucune importance pour l'ajout d'une Tâche.
Exemple
L'objet "FICHIER.ENTREE" est ajouté au Workflow "GS.JOUR".
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#,"FICHIER.ENTREE",, ADD_TASK)
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Syntaxe
MODIFY_TASK (RunID, [Nom de la Tâche], [Numéro courant], REPLACE_TASK
,Nom de l'objet [, EXTERNAL [, Nom du Workflow]])
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) du Workflow activé
Format : littéral de script, chiffre ou Variable de script
Nom de la Tâche
Numéro courant
Nom d'objet ou numéro courant de la Tâche du Workflow devant être
remplacée.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
Si plusieurs Tâches du même nom existent dans le Workflow et si aucun
numéro courant n'est indiqué, la Tâche sera automatiquement utilisée avec le
numéro le plus bas.
REPLACE_TASK
Remplace une Tâche.
Nom d'objet
Nom de l'objet devant remplacer la Tâche.
Format : Littéral de script ou Variable de script
EXTERNAL
Remplace une dépendance externe.
140
Chapter 3 Organisation fonctionnelle
Nom du Workflow
Nom du Workflow dans lequel se trouve la dépendance externe.
Format : Littéral de script ou Variable de script
Remarques
La fonction remplace la Tâche du Workflow par un autre objet.
Le type de l'objet remplacé doit être respecté : une dépendance par une dépendance, une Tâche par une
Tâche.
Exemple
La dépendance externe "GS.OBTENIR.FICHIERS" doit être remplacée par "GS.FICHIER.ENTREE".
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#, "GS.OBTENIR.FICHIERS",, REPLACE_TASK,
"GS.FICHIER.ENTREE", EXTERNAL)
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Syntaxe
MODIFY_TASK(RunID, [Nom de la Tâche], [Numéro courant], MOVE_TASK
,Colonne, Ligne)
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) du Workflow activé
Format : littéral de script, chiffre ou Variable de script
Nom de la Tâche
Numéro courant
Nom d'objet ou numéro courant de la Tâche du Workflow devant être
déplacée.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
Si plusieurs Tâches du même nom existent dans le Workflow et si aucun
numéro courant n'est indiqué, la Tâche sera automatiquement utilisée avec le
numéro le plus bas.
MOVE_TASK
Déplace une Tâche.
Colonne
Numéro de la colonne cible.
Format : littéral de script, chiffre ou Variable de script.
Automation Engine
Ligne
141
Numéro de la ligne cible.
Format : littéral de script, chiffre ou Variable de script.
Remarques
La fonction déplace une Tâche dans un Workflow.
Exemple
La Tâche "FICHIER.ENTREE" est déplacée vers la 4e ligne de la première colonne.
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#, "FICHIER.ENTREE",, MOVE_TASK, 1, 4)
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Syntaxe
MODIFY_TASK(RunID, [nom de la Tâche], [numéro courant], ALIAS ,Alias)
MODIFY_TASK(RunID, [nom de la Tâche], [numéro courant], ALIAS_PARENT ,Alias
Parent)
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) du Workflow activé
Format : littéral de script, chiffre ou Variable de script
Nom de la Tâche
Numéro courant
Nom d'objet ou numéro courant de la Tâche du Workflow devant être
modifiée.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
Si plusieurs Tâches du même nom existent dans le Workflow et si aucun
numéro courant n'est indiqué, la Tâche sera automatiquement utilisée avec le
numéro le plus bas.
ALIAS
Modifie l'alias d'une Tâche ou dépendance externe dans le Workflow
ALIAS_PARENT
Modifie l'alias du Workflow des dépendances externes. Uniquement possible
si la Tâche externe provient d'un autre Workflow.
142
Chapter 3 Organisation fonctionnelle
Alias
Alias Parent
Alias pour la Tâche, dépendance externe ou pour le Workflow de la Tâche
externe (uniquement pour les dépendances externes qui se réfèrent à une
Tâche dans un autre Workflow)
Format : nom UC4, littéral de script, chiffre ou Variable de script
Les mêmes restrictions sont valables pour l'alias que pour le nom de l'objet :
Longueur maximale : 200 caractères
Caractères autorisés: A-Z, 0-9, $, @, _, . et #
Remarques
La fonction script modifie l'alias d'une Tâche ou dépendance externe dans un Workflow.
L'alias peut uniquement être modifié par des Tâches du Workflow et des dépendances externes qui ont
été nouvellement ajoutées avec l'élément de script. Pour ce faire, utilisez le paramètre ADD_TASK.
Nous recommandons toujours d'indiquer le numéro courant pour effectuer la modification au niveau de la
Tâche appropriée ! Cela est surtout nécessaire si plusieurs Tâches portant le même nom d'objet se
trouvent dans le Workflow. Vous obtenez le numéro courant comme code retour de la fonction script si
vous ajoutez une Tâche (ADD_TASK).
Exemple
La Tâche "FICHIER.ENTREE" est ajoutée au Workflow "MAWI.TAG" et son alias est modifié sur
"ALIAS.FT".
:SET&RUNID# = GET_UC_OBJECT_NR("MAWI.TAG")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&NR# = MODIFY_TASK(&RUNID#, "FICHIER.ENTREE",, ADD_TASK)
:SET&RET# = MODIFY_TASK(&RUNID#, "FICHIER.ENTREE",&NR#,ALIAS,ALIAS.FT)
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Onglet Généralités
[Start, Stop et Commit] [Modifier la structure d'un Workflow] [Onglet Généralités] [Onglet "Au plus tôt"] [Onglet
"Dépendances"] [Onglet Exécution] [Onglet "Dépendance externe"]
Syntaxe
MODIFY_TASK(RunID, [Nom de la Tâche], [Numéro courant], CHECKPOINT, Marque
horaire [, Fuseau horaire] [, objet d'alerte])
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : littéral de script, chiffre ou Variable de script
Automation Engine
Nom de la Tâche
Numéro courant
143
Nom ou numéro de la Tâche précédente du Workflow.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
CHECKPOINT
Place ou retire un point de contrôle
Marque horaire
Marque horaire pour le point de contrôle
Format : Littéral de script ou Variable de script
Valeurs autorisées :
Marque horaire au format "JJ/HH:MM" - place un point de contrôle à cette
heure
"NONE" - Retire le point de contrôle
Fuseau horaire
Nom d'un objet Fuseau horaire.
Format : Littéral de script ou Variable de script
Fuseau horaire pour lequel la marque horaire doit être convertie.
Objet d'alerte
Objet devant être démarré lorsque le point de contrôle est dépassé.
Format : Littéral de script ou Variable de script
Remarques
La fonction script ajoute ou retire du Workflow un point de contrôle
Exemple
L'objet "FICHIER.ENTREE" du Workflow "GS.JOUR" reçoit un point de contrôle. L'objet Alerte "EQUIPE
DE JOUR" doit être démarré lorsque le point de contrôle est dépassé.
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#, "FICHIER.ENTREE",, CHECKPOINT,
"00/15:00",,"EQUIPE DE JOUR")
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Onglet "Au plus tôt"
[Start, Stop et Commit] [Modifier la structure d'un Workflow] [Onglet Généralités] [Onglet "Au plus tôt"] [Onglet
"Dépendances"] [Onglet Exécution] [Onglet "Dépendance externe"]
144
Chapter 3 Organisation fonctionnelle
Syntaxe
MODIFY_TASK(RunID, [Nom de la Tâche], [Numéro courant], EARLIEST_
START, Marque horaire [, Fuseau horaire])
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : littéral de script, chiffre ou Variable de script
Nom de la Tâche
Numéro courant
Nom ou numéro de la Tâche précédente du Workflow.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
EARLIEST_START
Place ou retire une heure de début au plus tôt.
Marque horaire
Marque horaire pour l'heure de début au plus tôt
Format : Littéral de script ou Variable de script
Valeurs autorisées :
Marque horaire au format "JJ/HH:MM" - place une heure de début au plus tôt
à cette heure
"NONE" - Retire l'heure de début au plus tôt
Fuseau horaire
Nom d'un objet Fuseau horaire.
Format : Littéral de script ou Variable de script
Fuseau horaire pour lequel la marque horaire doit être convertie.
Remarques
La fonction script ajoute ou retire du Workflow une heure de début au plus tôt.
Exemple
L'objet "FICHIER.ENTREE" du Workflow "GS.JOUR" reçoit une heure de début au plus tôt
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#, "FICHIER.ENTREE",, EARLIEST_START,
"00/18:00")
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Automation Engine
145
Syntaxe
MODIFY_TASK (RunID, [Nom de la Tâche], [Numéro courant], ACTIVE , Valeur)
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : littéral de script, chiffre ou Variable de script
Nom de la Tâche
Numéro courant
Nom ou numéro de la Tâche précédente du Workflow.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
ACTIVE
(Dés)active une Tâche.
Valeur
Valeurs autorisées : "YES" et "NO"
"YES" - Active la Tâche Elle sera exécutée au moment prévu.
"NO" - Désactive la Tâche. Elle ne sera pas exécutée au moment prévu
Remarques
La fonction (dés)active une Tâche du Workflow.
Exemple
La Tâche "FICHIER.ENTREE" du Workflow "GS.JOUR" doit être désactivée.
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#, "FICHIER.ENTREE",, ACTIVE, "NO")
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Syntaxe
MODIFY_TASK (RunID, [Nom de la Tâche], [Numéro courant], BREAKPOINT,
Valeur)
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : littéral de script, chiffre ou Variable de script
146
Chapter 3 Organisation fonctionnelle
Nom de la Tâche
Numéro courant
Nom ou numéro de la Tâche précédente du Workflow.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
BREAKPOINT
Place ou retire un point d'arrêt d'une Tâche.
Valeur
Valeurs autorisées : "YES" et "NO"
"YES" - Place un point d'arrêt sur cette Tâche.
"NO" - Retire le point d'arrêt de cette Tâche.
Remarques
La fonction place ou retire un point d'arrêt d'une Tâche.
Exemple
La Tâche "FICHIER.ENTREE" du Workflow "GS.JOUR" doit recevoir un point d'arrêt.
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#, "FICHIER.ENTREE",, BREAKPOINT, "YES")
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Onglet "Dépendances"
[Start, Stop et Commit] [Modifier la structure d'un Workflow] [Onglet Généralités] [Onglet "Au plus tôt"] [Onglet
"Dépendances"] [Onglet Exécution] [Onglet "Dépendance externe"]
Syntaxe
MODIFY_TASK(RunID, [Nom de la Tâche], [Numéro courant], LATEST_
START, Marque horaire [, Fuseau horaire])
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : littéral de script, chiffre ou Variable de script
Automation Engine
Nom de la Tâche
Numéro courant
147
Nom ou numéro de la Tâche précédente du Workflow.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
LATEST_START
Place ou retire une heure de début au plus tard.
Marque horaire
Marque horaire pour l'heure de début au plus tard
Format : Littéral de script ou Variable de script
Valeurs autorisées :
Marque horaire au format "JJ/HH:MM" - place une heure de début au plus tard
à cette heure
"NONE" - Retire l'heure de début au plus tard
Fuseau horaire
Nom d'un objet Fuseau horaire.
Format : Littéral de script ou Variable de script
Fuseau horaire pour lequel la marque horaire doit être convertie.
Remarques
La fonction script ajoute ou retire du Workflow une heure de début au plus tard.
Exemple
L'objet "FICHIER.ENTREE" du Workflow "GS.JOUR" reçoit une heure de début au plus tard.
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#, "FICHIER.ENTREE",, LATEST_START,
"00/10:00:00")
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Syntaxe
MODIFY_TASK(RunID, [Nom de la Tâche], [Numéro courant], LATEST_END, Marque
horaire [, Fuseau horaire])
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : littéral de script, chiffre ou Variable de script
148
Chapter 3 Organisation fonctionnelle
Nom de la Tâche
Numéro courant
Nom ou numéro de la Tâche précédente du Workflow.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
LATEST_END
Place ou retire une heure de fin au plus tard.
Marque horaire
Marque horaire pour l'heure de fin au plus tard
Format : Littéral de script ou Variable de script
Valeurs autorisées :
Marque horaire au format "JJ/HH:MM" - place une heure de fin au plus tard à
cette heure
"NONE" - Retire l'heure de fin au plus tard
Fuseau horaire
Nom d'un objet Fuseau horaire.
Format : Littéral de script ou Variable de script
Fuseau horaire pour lequel la marque horaire doit être convertie.
Remarques
La fonction script ajoute ou retire du Workflow une heure de fin au plus tard.
Exemple
L'objet "FICHIER.ENTREE" du Workflow "GS.JOUR" reçoit une heure de fin au plus tard.
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#, "FICHIER.ENTREE",, LATEST_END, "00/18:00")
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Syntaxe
MODIFY_TASK(RunID, [Nom de la Tâche], [Numéro courant], DEPENDENCY_STATE_
MATCH , Valeur )
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : littéral de script, chiffre ou Variable de script
Automation Engine
Nom de la Tâche
Numéro courant
149
Nom ou numéro de la Tâche précédente du Workflow.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
DEPENDENCY_
STATE_MATCH
Détermine le nombre de statuts des prédécesseurs devant correspondre.
Valeur
Valeurs autorisées : "*ALL" et "NON"
"ALL" - Tous les statuts doivent correspondre
"ONE" - Au moins un statut doit correspondre
Remarques
La fonction détermine le nombre de statuts des prédécesseurs devant correspondre pour que la Tâche
puisse être exécutée.
Exemple
Tous les prédécesseurs de la Tâche "FICHIER.ENTREE" du Workflow "GS.JOUR" doivent avoir le
statut attendu.
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#, "FICHIER.ENTREE",, DEPENDENCY_STATE_MATCH,
"ALL")
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Syntaxe
MODIFY_TASK (RunID, [nom de la Tâche du successeur], [numéro
courant], Dépendance,[nom de la Tâche source] , [numéro courant], statut)
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) du Workflow activé
Format : littéral de script, chiffre ou Variable de script
150
Chapter 3 Organisation fonctionnelle
Nom de la Tâche du
successeur
Numéro courant
Nom ou numéro de la Tâche du successeur.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
Dépendances
Pour modifier les dépendances
Valeur autorisées : "ADD_DEPENDENCY", "MODIFY_DEPENDENCY" et
"REMOVE_DEPENDENCY"
"ADD_DEPENDENCY" - Ajoute une dépendance
"MODIFY_DEPENDENCY" - Modifie une dépendance
"REMOVE_DEPENDENCY" - Retire une dépendance
Nom de la Tâche
Numéro courant
Nom ou numéro de la Tâche dont la dépendance doit être modifiée.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
Statut
Statut attendu de la Tâche précédente à la fin de l'exécution.
Format : Littéral de script ou Variable de script
Valeurs autorisées : "Statut de fin" et "NONE"
"Statut de fin" - Par ex : ENDED_OK
"NONE" - Le statut de fin n'est pas contrôlé.
"REMOVE_DEPENDENCY" n'a pas besoin de statut.
Remarques
La fonction script ajoute ou retire du Workflow une dépendance. Elle relie aussi avec des lignes des
Tâches entre elles
Exemple
La case START est reliée à 4 Tâches. Le statut de fin, que la Tâche 9 attend de son prédécesseur, Tâche
8, devient "ANY_OK". La dépendance et donc la ligne entre les Tâches 10 et 11 sont alors supprimées.
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#,, 4, ADD_DEPENDENCY, "START",, "ENDED_OK")
:SET&RET# = MODIFY_TASK(&RUNID#,, 9, MODIFY_DEPENDENCY,, 8,"ANY_OK")
:SET&RET# = MODIFY_TASK(&RUNID#,, 11, REMOVE_DEPENDENCY,, 10, "ENDED_OK")
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Automation Engine
151
Syntaxe
MODIFY_TASK(RunID, [Nom de la Tâche], [Numéro courant], DEPENDENCY_ELSE_
ACTION , Action Sinon[ , objet d'Alerte] )
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : littéral de script, chiffre ou Variable de script
Nom de la Tâche
Numéro courant
Nom ou numéro de la Tâche précédente du Workflow.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
DEPENDENCY_
ELSE_ACTION
Détermine l'action devant être exécutée si la dépendance attendue n'apparaît
pas.
Action Sinon
Valeurs autorisées :"ABORT", "BLOCK", "BLOCK_ABORT" et "SKIP"
"ABORT" - La Tâche et le Workflow sont interrompus.
"BLOCK" - Le Workflow est suspendu à la Tâche précédente.
"BLOCK_ABORT" - Le Workflow est suspendu à la Tâche précédente et
envoie, la cas échéant, un signal d'arrêt au Workflow supérieur.
"SKIP" - La Tâche est ignorée.
Objet d'alerte
Objet devant être démarré lorsque le point de contrôle est dépassé.
Format : Littéral de script ou Variable de script
Remarques
La fonction script détermine l'action devant être exécutée si la dépendance attendue n'apparaît pas.
Exemple
La Tâche "FICHIER.ENTREE" du Workflow "GS.JOUR" doit être ignorée si la dépendance attendue
n'apparaît pas.
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#, "FICHIER.ENTREE",, DEPENDENCY_ELSE_ACTION,
"SKIP")
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
152
Chapter 3 Organisation fonctionnelle
Onglet Exécution
[Start, Stop et Commit] [Modifier la structure d'un Workflow] [Onglet Généralités] [Onglet "Au plus tôt"] [Onglet
"Dépendances"] [Onglet Exécution] [Onglet "Dépendance externe"]
Syntaxe
MODIFY_TASK(RunID, [Nom de la Tâche], [Numéro courant], Option d'exécution
Valeur)
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : littéral de script, chiffre ou Variable de script
Nom de la Tâche
Numéro courant
Nom ou numéro de la Tâche précédente du Workflow.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
Option d'exécution
Option d'exécution devant être modifiée.
Valeurs autorisées :
"RUNTIME_USE_TASK_SETTINGS" - Utiliser la configuration MRT/SRT
de la Tâche
"RUNTIME_MRT_NONE" - Pas de durée maximale d'exécution
"RUNTIME_MRT_FIXED" - Durée maximale d'exécution fixe
"RUNTIME_MRT_ERT" - Durée maximale d'exécution = ERT + %
"RUNTIME_MRT_TIME" - Durée maximale d'exécution = date actuelle + une
période définie
"RUNTIME_SRT_NONE" - Pas de durée minimale d'exécution
"RUNTIME_SRT_FIXED" - Durée minimale d'exécution fixe
"RUNTIME_SRT_ERT" - Durée minimale d'exécution = ERT - %
"RUNTIME_ELSE_ACTION" - Action Sinon si la durée d'exécution est
différente
Automation Engine
Valeur
153
La valeur dépend de l'option d'exécution.
Pour "RUNTIME_USE_TASK_SETTINGS" : "YES" et "NO"
"YES" - Utiliser les options d'exécution de la Tâche
"NO" - Utiliser les options d'exécution des propriétés
Pour "RUNTIME_MRT_NONE" : Valeur autorisée :
Pour "RUNTIME_MRT_FIXED" : Valeur fixe au format HH:MM:SS
Pour "RUNTIME_MRT_ERT" : Pourcentage
Pour "RUNTIME_MRT_TIME" : "JJ/HH:MM" [, Fuseau horaire]
"JJ" - Nombre de jours à ajouter à la date actuelle
"HH:MM" - Heure
Fuseau horaire dans lequel la marque horaire doit être convertie
Pour "RUNTIME_SRT_NONE" : Valeur autorisée :
Pour "RUNTIME_SRT_FIXED" : Valeur fixe au format HH:MM:SS
Pour "RUNTIME_SRT_ERT" : Pourcentage
Pour "RUNTIME_ELSE_ACTION" : Action Sinon [, objet d'alerte]
Action Sinon - "CANCEL" (Interrompre/arrêter la Tâche) et "NONE" (Pas
d'action Sinon)
Objet d'alerte à démarrer si la durée d'exécution est dépassée.
Remarques
La fonction script modifie les paramètres d'exécution du Workflow.
Exemple
Si l'exécution de la Tâche "FICHIER.ENTREE" dure plus que deux heures, l'objet Alerte "EQUIPE DE
JOUR" est démarré. La durée minimale d'exécution est sans importance.
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RETMRT# = MODIFY_TASK(&RUNID#, "FICHIER.ENTREE",, RUNTIME_MRT_FIXED,
"2:00:00")
:SET &RETSRT# = MODIFY_TASK(&RUNID#, "FICHIER.ENTREE",, RUNTIME_SRT_NONE)
:SET &RETACT# = MODIFY_TASK(&RUNID#, "FICHIER.ENTREE",, RUNTIME_ELSE_
ACTION,"CANCEL", "EQUIPE DE JOUR")
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Onglet "Dépendance Externe"
[Start, Stop et Commit] [Modifier la structure d'un Workflow] [Onglet Généralités] [Onglet "Au plus tôt"] [Onglet
"Dépendances"] [Onglet Exécution] Onglet "Dépendance externe"]
154
Chapter 3 Organisation fonctionnelle
Syntaxe
MODIFY_TASK(RunID, [Nom de la Tâche], [Numéro courant],EXTERNAL_
SATISFACTION , Délai d'exécution [, Durée])
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : littéral de script, chiffre ou Variable de script
Nom de la Tâche
Numéro courant
Nom ou numéro de la Tâche précédente du Workflow.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
EXTERNAL_
SATISFACTION
Définit le délai d'exécution.
Satisfaction du Temps
de référence
Validité du délai d'exécution
Format : Littéral de script ou Variable de script
Valeurs autorisées : "LOGICAL_DATE", "LAST_EXECUTION", "BEFORE_
START" et "AFTER_START"
"LOGICAL_DATE" - Valable seulement s'il est activé avec la même date
logique
"LAST_EXECUTION" - Depuis la dernière exécution du Workflow
"BEFORE_START" - Dans les limites d'une période avant le démarrage du
Workflow
"AFTER_START" - Après le démarrage du Workflow
Durée
Période pour l'option "BEFORE_START" au format "HH:MM:SS"
Format : Littéral de script ou Variable de script
Remarques
La fonction définit le délai d'exécution d'une dépendance externe.
Exemple
Le délai d'exécution de la dépendance externe "GS.FICHIERS.CHERCHER" commence au démarrage
du Workflow.
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#, "GS.OBTENIR.FICHIERS",, EXTERNAL_
SATISFACTION, "AFTER_START")
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Automation Engine
155
Syntaxe
MODIFY_TASK(RunID, [Nom de la Tâche], [Numéro courant], EXTERNAL_STATUS
, Statut)
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : littéral de script, chiffre ou Variable de script
Nom de la Tâche
Numéro courant
Nom ou numéro de la Tâche précédente du Workflow.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
EXTERNAL_STATUS
Définit ou supprime le statut attendu.
Statut
Statut attendu de la Tâche externe à la fin de l'exécution.
Format : Littéral de script ou Variable de script
Valeurs autorisées : "Statut de fin" et "NONE"
"Statut de fin" - Par ex : ENDED_OK
"NONE" - le système vérifie uniquement si la Tâche s'est terminée dans le
délai imparti. Son statut n'a alors aucune importance.
Remarques
La fonction définit le statut attendu d'une dépendance externe.
Exemple
La dépendance externe "GS.FICHIER.CHERCHER" du Workflow "GS.JOUR" doit avoir le statut
"ENDED_OK".
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#, "GS.OBTENIR.FICHIERS",, EXTERNAL_STATUS,
"ENDED_OK")
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
156
Chapter 3 Organisation fonctionnelle
Syntaxe
MODIFY_TASK(RunID, [Nom de la Tâche], [Numéro courant], EXTERNAL_ELSE_
ACTION , Action [, objet d'alerte])
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : littéral de script, chiffre ou Variable de script
Nom de la Tâche
Numéro courant
Nom ou numéro de la Tâche précédente du Workflow.
Format : littéral de script, chiffre ou Variable de script.
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
EXTERNAL_ELSE_
ACTION
Définit l'action à exécuter si la Tâche externe n'a pas atteint au moins une fois
le statut attendu dans le délai imparti ou si elle ne s'est pas terminée.
Action
Valeurs autorisées : "WAIT", "SKIP" et "CANCEL"
"WAIT" - Attendre
"SKIP" - Ignorer
"CANCEL" - Interrompre le Workflow
Objet d'alerte
Objet devant être démarré lorsque le délai d'attente est dépassé.
Format : Littéral de script ou Variable de script
Remarques
La fonction définit l'action Sinon d'une dépendance externe.
Exemple
Le Workflow "GS.JOUR" est interrompue si la dépendance externe sur "GS.FICHIER.CHERCHER"
n'apparaît pas comme prévue. L'objet Alerte "EQUIPE DE JOUR" doit alors être démarré.
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#, "GS.OBTENIR.FICHIERS",, EXTERNAL_ELSE_
ACTION, "CANCEL", "EQUIPE DE JOUR")
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Syntaxe
MODIFY_TASK(RunID, [Nom de la Tâche], [Numéro courant], EXTERNAL_TIMEOUT_
ACTION , Durée du délai d'attente , Action [, objet d'alerte])
Automation Engine
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : littéral de script, chiffre ou Variable de script
Nom de la Tâche
Numéro courant
Nom ou numéro de la Tâche précédente du Workflow.
Format : littéral de script, chiffre ou Variable de script.
157
Une Tâche dans un Workflow est identifiée par l'un ou l'autre. Vous pouvez
entrer celui que vous voulez. Si vous entrez les deux, ils doivent bien sûr
correspondre.
Attention, le numéro courant n'est pas le RunID. C'est le numéro de la
Tâche dans le Workflow (par ex."3" pour la troisième Tâche dans a liste). Le
numéro courant est signalé dans la case de la Tâche.
EXTERNAL_
TIMEOUT_ACTION
Définit la période pendant laquelle le système doit attendre avant d'effectuer
l'action Sinon "WAIT".
Durée du délai d'attente
Durée du délai d'attente au format "HH:MM:SS"
Format : Littéral de script ou Variable de script
Action
Valeurs autorisées : "WAIT", "SKIP" et "CANCEL"
"WAIT" - Attendre
"SKIP" - Ignorer
"CANCEL" - Interrompre le Workflow
Objet d'alerte
Objet devant être démarré lorsque un délai d'attente apparaît.
Format : Littéral de script ou Variable de script
Remarques
La fonction définit les paramètres du délai d'attente d'une dépendance externe.
Exemple
La dépendance externe "GS.OBTENIR.FICHIERS" doit être ignorée au bout d'une heure.
:SET&RUNID# = GET_UC_OBJECT_NR("GS.JOUR")
:SET&RETSTOP# = MODIFY_TASK(&RUNID#, STOP_MODIFY)
:SET&RET# = MODIFY_TASK(&RUNID#, "GS.OBTENIR.FICHIERS",, EXTERNAL_TIMEOUT_
ACTION, "01:00:00", "SKIP")
:SET&RETCOMMIT# = MODIFY_TASK(&RUNID#, COMMIT)
:SET&RETGO# = MODIFY_TASK(&RUNID#, GO)
Rubriques connexes :
Elément de script
Description
MODIFY_UC_OBJECT
Modifie l'attribut d'un objet activé.
Elément de script - Activation d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
158
Chapter 3 Organisation fonctionnelle
3.4.25 MODIFY_UC_OBJECT
Fonction script : Modifie l'attribut d'un objet activé.
Syntaxe
MODIFY_UC_OBJECT(RunID, attribut, valeur)
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de l'objet activé
Format : littéral de script, chiffre ou Variable de script.
Si l'attribut EARLIEST_STARTTIME a été utilisé, sa valeur n'est pas le
RunID de la Tâche, mais celui du Workflow dans lequel la Tâche se trouve.
Attribut
Attribut qui doit être modifié.
Format : nom UC4 ou Variable de script
Valeur
Valeur définie pour l'attribut.
Format : nom UC4, littéral de script, chiffre ou Variable de script
Codes retour
Automation Engine
159
"0" - La modification de l'attribut est réussie.
"20342" - Cet attribut n'est pris en charge.
Les codes retour de l'attribut GAP sont :
20534 - "0" n'est pas permis.
20591 - Le RunID n'a pas été trouvé.
20860 - Il ne s'agit pas d'une Tâche périodique.
20861 - L'option "Avec un intervalle de..." n'a pas été sélectionnée dans la Tâche périodique.
Les codes retour des attributs GOIMM, EARLIEST_STARTTIME et REMOVE_DEPENDENCY sont :
"20378" - Le Workflow n'a pas été trouvé.
"20840" - Il existe plusieurs instances de cette Tâche dans le Workflow.
"20841" - Cette Tâche n'existe pas dans le Workflow.
Les codes retour de l'attribut GR_MAX_PAR_JOBS sont
"11121" - Le RunID n'a pas été trouvé.
"20460" - La valeur de l'attribut n'est pas dans la plage 1-999.
Les codes retour de l'attribut IGNORE_SYNC sont :
"11191" - Le RunID n'a pas été trouvé.
Les codes retour de l'attribut GR_MAX_PAR_JOBS sont
"20591" - Le RunID n'a pas été trouvé.
"20587" - La valeur de l'attribut n'est pas dans la plage 0-999.
Les codes retour de l'attribut RELEASE sont :
"11016" - Le Workflow à modifier n'existe pas.
"11510" - Le Workflow n'est pas actif.
"20540" - Le RunID n'a pas été trouvé.
Les codes retour de l'attribut RESPONSE sont :
"20539" - Pas d'Alerte avec ce RunID.
"20538" - La valeur n'est pas correcte.
"11151" - La valeur donnée ne correspond pas au type d'Alerte (Message, Requête, Alerte).
"11060" - La paire Alerte/Valeur n'est pas prise en charge.
"11061" - L'Alerte a déjà été acceptée par un autre Utilisateur.
"11062" - La confirmation de l'Alerte vient d'un Utilisateur qui n'est pas dans l'objet Alerte.
"11064" - Le rejet de l'Alerte vient d'un Utilisateur qui n'est pas dans l'objet Alerte.
"20859" - La réaction à cette Alerte vient d'un Utilisateur inactif dans l'objet Alerte.
Remarques
Les attributs cités dans le tableau peuvent être modifiés par des objets activés. Les nouvelles valeurs
s'appliquent à l'exécution actuelle de la Tâche et ne sont donc pas enregistrées dans l'objet.
Type d'objet
Attribut
Valeur
CALL
RESPONSE
Réaction à une
Alerte.
"OK" = confirmation de l'Alerte (Message).
"YES" = Répondre positivement à l'Alerte (Requête).
"NO" = Répondre négativement à l'Alerte (Requête).
"ACCEPT" = Accepter l'Alerte (Alerte).
"REJECT" = Rejeter l'Alerte (Alerte).
"DONE" = Traiter l'Alerte (Alerte)
160
Chapter 3 Organisation fonctionnelle
JOBG
GR_MAX_PAR_
JOBS
Nombre
maximum de
Tâches
exécutées en
parallèle dans un
Groupe.
1 à 999 Tâches exécutées en parallèle.
JOBP
RELEASE
Numéro courant (RunID) de la Tâche bloquée dans le Workflow.
Libération d'un
Workflow bloqué.
Pour les trois attributs suivants, la Tâche à modifier doit avoir le statut "Attente de précondition".
GOIMM
La Tâche d'un
Workflow
démarre
immédiatement
Nom de la Tâche. Elle ne doit s'afficher qu'une seule fois dans le
Workflow.
EARLIEST_
STARTTIME
Modification de
l'heure de début
la plus ancienne
d'une Tâche
dans un
Workflow
Indiquez l'heure de début la plus ancienne ou le mot clé "OFF".
Dans les deux cas, la fonction de script a également besoin du nom
de la Tâche.
Syntaxe du paramètre Valeur :
Nom de la Tâche, [format de l'heure;]heure
ou
Nom de la Tâche, OFF
L'heure de début est attribuée à la Tâche ou en modifie une déjà
définie. La fonction de script attend le format d'heure "HHMMSS"
lorsque vous n'en définissez pas de particulière. Le mot clé "OFF"
supprime l'heure de début la plus ancienne.
Attention, vous ne pouvez modifier avec la fonction de script
MODIFY_UC_OBJECT que l'heure de début la plus ancienne. Le
nombre de jours après lequel une Tâche doit démarrer sera toujours
0 si vous utilisez l'attribut EARLIEST_STARTTIME. Vous ne
pouvez définir aucune valeur.
A partir de la version 8 de Operations Manager, le script MODIFY_
TASK permet de définir, sous la forme "JJ/HH.MM", l'heure de
début au plus tôt d'une Tâche dans un Workflow activé.
REMOVE_
DEPENDENCY
Suppression de
la dépendance
avec le
prédécesseur
direct
La Tâche ignore le statut de fin attendu du prédécesseur indiqué.
Par conséquent, le traitement de cette Tâche se poursuit si tous les
autres prédécesseurs sont déjà terminés.
Syntaxe du paramètre Valeur :
nom de la Tâche [, nom du prédécesseur ]
Lorsque vous n'indiquez pas de prédécesseur, tous les
prédécesseurs sont ignorés et la Tâche démarre immédiatement.
Automation Engine
161
CALL, JOBF, PRIORITY
JOBP,
Priorité de la
JOBS,
Tâche
JSCH, SCRI
Valeurs autorisées : 0 à 255
Tâches du
Workflow
IGNORE_
CONDITIONS
Démarre immédiatement une Tâche de Workflow qui se trouve dans
le statut Pré-conditions". Le paramètre Valeur ne doit pas être
spécifié.
Tâches du
Workflow
CHECK_
CONDITIONS
Recommencer la vérification des conditions/instructions d'une
tâche de Workflow qui se trouve dans le statut "En attente des Préconditions". Le paramètre Valeur ne doit pas être spécifié.
CALL,
IGNORE_
EVNT,
QUEUE
JOBF,
JOBG,
JOBP,
JOBQ,JOBS,
JSCH, SCRI
Démarre immédiatement une tâche se trouvant dans un statut
d'attente en raison de slots de Queue insuffisants. Le paramètre
Valeur ne doit pas être spécifié.
Tous les
objets
activables
Les paramètres Sync sont ignorés. La valeur n'a aucune
importance, cependant ce paramètre doit être spécifié.
IGNORE_SYNC
Exemple :
MODIFY_UC_OBJECT(&RUNNR#, IGNORE_SYNC, "")
Tâches
périodiques
GAP
Modifie l'intervalle de temps entre les exécutions d'une Tâche
périodique.
Valeur en minutes
Tous les
objets
exécutables
SET_EXPRESS
Démarre immédiatement une tâche qui se trouve dans le statut "En
attente de ressources" (JOBS, JOBF et JOBD).
Valeurs autorisées : "ON" et "OFF"
Vous pouvez modifier cette Tâche avec cette fonction, si elle est déjà créée mais qu'elle se trouve
encore en statut d'attente. Elle ne doit pas avoir été définie sur Générer à l'Exécution. Utilisez
l'instruction de script :PUT_ATT si vous désire qu'une Tâche soit modifiée dès sa création.
L'instruction de script :ON_ERROR permet de définir la réaction en cas d'erreur. Comme indiqué
auparavant, vous pouvez analyser l'erreur avec les fonctions de script pour le traitement des erreurs. Le
traitement du script se poursuit. Toutefois, vous avez également la possibilité de l'interrompre.
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die UC4-Datenbank
geschrieben werden.
Exemples
Le premier exemple montre comment confirmer une Alerte (Requête). Pour ce faire, le numéro courant
(RunID) doit au préalable avoir été déterminé et enregistré dans la Variable de script "&RUNNR#".
:SET &RUNNR# = ACTIVATE_UC_OBJECT("équipe de nuit")
!...
:SET &MODOBJ# = MODIFY_UC_OBJECT( &RUNNR#, RESPONSE, OK)
162
Chapter 3 Organisation fonctionnelle
Dans le deuxième exemple, un Groupe est activé et le numéro courant (RunID) est enregistré dans une
Variable de script. Le nombre de Tâches exécutées en parallèle dans le Groupe est défini sur "1". Les
Tâches enregistrées en attente ne sont ensuite traitées qu'en série.
:SET &RUNNR# = ACTIVATE_UC_OBJECT("GRP7")
:SET &MODOBJ# = MODIFY_UC_OBJECT( &RUNNR#, GR_MAX_PAR_JOBS, 1)
Les exemples suivants montrent des modifications d'une Tâche exécutée dans un Workflow.
!Le Job "GS.FIN" doit démarrer immédiatement.
:SET &RUNNR# = GET_UC_OBJECT_NR(GS.JOUR)
:SET &MODOBJ# = MODIFY_UC_OBJECT(&RUNNR#, GOIMM, "GS.FIN")
!Le Job "GS.FIN" doit être exécuté au plus tôt à 15h00.
:SET &RUNNR# = GET_UC_OBJECT_NR(GS.JOUR)
:SET &MODOBJ# = MODIFY_UC_OBJECT(&RUNNR#, EARLIEST_
STARTTIME,"GS.FIN","150000")
!Le Job "GS.FIN" doit ignorer l'heure de début la plus ancienne.
:SET &RUNNR# = GET_UC_OBJECT_NR(GS.JOUR)
:SET &MODOBJ# = MODIFY_UC_OBJECT(&RUNNR#, EARLIEST_STARTTIME,"GS.FIN",
OFF)
!Le Job "GS.FIN" doit ignorer la dépendance envers le prédécesseur
"GS.TOUS_LES_JOURS".
:SET &RUNNR# = GET_UC_OBJECT_NR(GS.JOUR)
:SET &MODOBJ# = MODIFY_UC_OBJECT(&RUNNR#, REMOVE_DEPENDENCY,"GS.FIN",
"GS.TOUS_LES_JOURS")
Rubriques connexes :
Elément de
script
Description
:ADD_ATT
Ajoute des destinataires à un objet Alerte pendant l'exécution.
:PUT_ATT
Modifie la valeur d'un attribut pendant la génération.
GET_ATT
Indique la valeur des attributs d'une Tâche pendant la génération.
MODIFY_TASK
Modifie les Chaînes de traitements en cours.
:ON_ERROR
Détermine les réactions associées à certaines erreurs ou certains messages de
script.
Elément de script - Lecture ou modification d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.26 SET_SYNC
Fonction script : Exécute l'action définie d'un objet Sync.
Syntaxe
SET_SYNC(Sync, action)
Elément de syntaxe
Description/format
Automation Engine
Sync
Nom d'un objet Sync dont l'action doit être exécutée.
Format : Nom UC4, Littéral de script ou Variable de script
Action
Action d'un objet Sync devant être exécutée.
Format : nom UC4, littéral de script ou Variable de script
163
Codes retour
"Y" - L'action a pu être exécutée pour l'objet Sync.
"N" - L'action n'a pas pu être exécutée pour l'objet Sync.
Remarques
Vous pouvez définir les actions pour un objet Sync dans l'onglet "Sync".
La possibilité d'exécuter ou non une action dépend de ces définitions, car chacune d'entre elles ne peut
uniquement être exécutée dans un statut déterminé.
Attention : pour l'exécution de l'élément de script, les droits d'écriture (W) sur l'objet Sync indiqué sont
requis !
Exemple
L'exemple suivant définit l'action "EXCLUSIF" pour l'objet Sync "DB.STATUS".
:SET &RET#=SET_SYNC("DB.STATUS","EXCLUSIF")
:IF &RET# = "Y"
:
PRINT "Le statut EXCLUSIF de l'objet Sync a été défini !"
:ELSE
:
PRINT "Le statut EXCLUSIF de l'objet Sync n'a pas été défini !"
:ENDIF Rubriques connexes :
Elément de script
Description
GET_SYNC
Demande le statut ou la valeur actuelle d'un objet Sync.
:ATTACH_SYNC
Attribue un objet Sync à une Tâche.
Elément de script - Lecture ou modification d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.27 XML_BEAUTIFY
Fonction script : Préparation du style d'affichage d'un document XML.
Syntaxe
XML_BEAUTIFY (référence)
164
Chapter 3 Organisation fonctionnelle
Elément de syntaxe
Description/format
Référence
Référence au document XML à la structure duquel vous souhaitez appliquer
un style d'affichage
Format : Littéral de script ou Variable de script
Code retour
"0" - Le contenu du document XML a été bien préparé.
Remarques
La fonction de script prépare le style d'affichage d'un document XML avant que ce dernier ne soit écrit
dans un fichier XML à l'aide de XML_PRINTINTOFILE.
Pour que la fonction de script accède à un élément, une référence doit lui être transmise. Cette dernière est
fournie par des scripts qui peuvent se positionner dans le document XML, comme XML_GET_FIRST_
CHILD, XML_GET_NEXTSIBLING ou XML_SELECT_NODE. La fonction de script prépare l'élément,
ses sous-éléments et les attributs correspondants.
Vous pouvez également utiliser la référence retournée par XML_OPEN pour préparer le style
d'affichage de l'intégralité du document XML.
Si vous n'utilisez pas la fonction de script XML_BEAUTIFY, les informations du document XML sont
écrites les unes à la suite des autres (sans retour à la ligne) dans un fichier. Ce fichier est par conséquent
difficilement lisible si vous l'ouvrez avec un éditeur de texte tel que le Bloc-notes.
Exemples
L'intégralité de la structure de la documentation est tout d'abord préparée afin d'être plus lisible, puis
affichée dans le fichier "Docu.xml".
:SET &XMLDOCU# = XML_OPEN(DOCU,"DISPOSITION","@Détails")
:SET &RET1#= XML_BEAUTIFY(&XMLDOCU#)
:SET &RET2# = XML_PRINTINTOFILE("C:\UC4\XML_
Documentation\Docu.xml",&XMLDOCU#)
:XML_CLOSE
Le second exemple affiche dans un fichier les éléments "Description" et "Objets", ainsi que leurs attributs.
:SET &XMLDOCU# = XML_OPEN(DOCU,"DISPOSITION","@Détails")
:SET &HND# = XML_GET_FIRST_CHILD(&XMLDOCU#)
:SET &RET1#= XML_BEAUTIFY(&HND#)
:SET &RET2# = XML_PRINTINTOFILE("C:\UC4\XML_Documentation\Docu.xml",&HND#)
:XML_CLOSE
Rubriques connexes :
XML_PRINTINTOFILE
Affiche le document XML dans un fichier
Elément de script - Lecture ou modification d'objets
Documentation structurée
Automation Engine
165
www.w3c.org/TR/xmlbase
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.28 XML_GET_ATTRIBUTE
Fonction script : indication la valeur d'un attribut d'un élément.
Syntaxe
XML_GET_ATTRIBUTE (référence, @attribut)
Elément de syntaxe
Description/format
Référence
Référence à l'élément dont vous souhaitez déterminer la valeur d'attribut
Format : Littéral de script ou Variable de script
Attribut
Nom de l'attribut commençant par "@"
Format : Littéral de script ou Variable de script
Codes retour
Contenu de l'attribut.
" " - L'attribut n'a aucune valeur ou l'élément ne comporte pas d'attribut.
Remarques
Cette fonction de Script permet de lire la valeur d'attribut d'un élément dans un document XML.
Pour que la fonction de script accède à l'élément, une référence doit lui être transmise. Cette dernière est
fournie par des scripts qui peuvent se positionner dans un document XML, comme XML_GET_FIRST_
CHILD, XML_GET_NEXTSIBLING, XML_SELECT_NODE ou XML_OPEN.
La documentation structurée comporte deux types d'attribut distincts, "Texte" et "Liste", tous deux lisibles
par XML_GET_ATTRIBUTE.
La fonction de script ne peut traiter plus de 1024 caractères. Sinon, elle ne renvoie aucun code retour.
Faites par conséquent attention à la longueur de l'attribut.
Exemple
L'exemple suivant permet de déterminer la valeur de l'attribut "Nom" (de type Liste) et celle de l'attribut
"Titre" (de type Texte). Les contenus "Henri" et "Disposition 2008" sont affichés dans le rapport
d'activation.
166
Chapter 3 Organisation fonctionnelle
:SET &XMLDOCU# = XML_OPEN(DOCU,"DISPOSITION","@Détails")
:
:
:
:
:
:
SET &HND# = XML_GET_FIRST_CHILD(&XMLDOCU#)
SET &HND# = XML_GET_NEXTSIBLING(&HND#)
SET &NOM# = XML_GET_ATTRIBUTE(&HND#, "@Nom")
PRINT"Valeur d'attribut : &NOM#"
SET &TITRE# = XML_GET_ATTRIBUTE(&HND#, "@Titre")
PRINT"Valeur d'attribut : &TITRE#"
:XML_CLOSE
Rubriques connexes :
Elément de script - Lecture ou modification d'objets
Documentation structurée
www.w3c.org/TR/xmlbase
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.29 XML_GET_CHILD_COUNT
Fonction script : Compte les sous-éléments d'un élément.
Syntaxe
XML_GET_CHILD_COUNT (référence)
Elément de syntaxe
Description/format
Référence
Référence à l'élément dont vous souhaitez compter les sous-éléments
Format : Littéral de script ou Variable de script
Code retour
Nombre de sous-éléments.
Automation Engine
167
Remarques
La fonction de Script détermine le nombre de sous-éléments d'un élément.
Pour que la fonction de script accède à l'élément, une référence doit lui être transmise. Cette dernière est
fournie par des scripts qui peuvent se positionner dans le document XML, comme XML_GET_FIRST_
CHILD, XML_GET_NEXTSIBLING, XML_SELECT_NODE ou XML_OPEN.
Attention : seuls les sous-éléments qui figurent dans le niveau suivant de la structure sont dénombrés.
La fonction de Script ne détermine pas le nombre total de sous-éléments d'un élément.
Exemple
L'exemple affiche dans le rapport d'activation le nombre de sous-éléments "2".
:SET &XMLDOCU# = XML_OPEN(DOCU,"DISPOSITION","@Détails")
:SET &NR# = XML_GET_CHILD_COUNT(&XMLDOCU#)
:PRINT "Nombre de sous-éléments de Content : &NR#"
:XML_CLOSE
Rubriques connexes :
Elément de script - Lecture ou modification d'objets
Documentation structurée
www.w3c.org/TR/xmlbase
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.30 XML_GET_FIRST_CHILD
Fonction script : Détermine le premier sous-élément d'un élément
168
Chapter 3 Organisation fonctionnelle
Syntaxe
XML_GET_FIRST_CHILD (référence)
Elément de syntaxe
Description/format
Référence
Référence de l'élément dont vous souhaitez déterminer le sous-élément
Format : Littéral de script ou Variable de script
Code retour
Réfère au premier sous-élément
" " - L'élément n'a pas de sous-élément.
Remarques
La fonction de script détermine le premier sous-élément d'un élément dans le document XML.
Pour que la fonction de script accède au premier sous-élément, une référence doit lui être transmise. Cette
référence est utilisée par certains scripts pour se positionner dans le document XML et le modifier. Le tout
premier descripteur est celui retourné par XML_OPEN. Il renvoie, par exemple, à l'élément racine
"Content" de la documentation structurée.
Si XML_GET_FIRST_CHILD décale le positionnement d'un niveau vers la droite dans la structure,
XML_GET_NEXTSIBLING sert à déterminer l'élément de même niveau suivant.
Exemple
Dans l'exemple suivant, le nom du premier sous-élément "Description" est déterminé.
:SET &XMLDOCU# = XML_OPEN(DOCU,"DISPOSITION","@Détails")
:SET &HND# = XML_GET_FIRST_CHILD(&XMLDOCU#)
:
:
:
:
:
:
IF &HND# <> ""
SET &NOM# = XML_GET_NODE_NAME(&HND#)
PRINT "Sous-élément : &NOM#"
ELSE
PRINT "Pas de sous-élément."
ENDIF
Automation Engine
169
:XML_CLOSE
Rubriques connexes :
Elément de script
Description
XML_GET_LAST_CHILD
Détermine le dernier sous-élément d'un élément.
XML_GET_NEXTSIBLING
Détermine l'élément suivant.
Elément de script - Lecture ou modification d'objets
Documentation structurée
www.w3c.org/TR/xmlbase
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.31 XML_GET_LAST_CHILD
Fonction script : Détermine le dernier sous-élément d'un élément.
Syntaxe
XML_GET_LAST_CHILD (référence)
Elément de syntaxe
Description/format
Référence
Référence de l'élément dont vous souhaitez déterminer le sous-élément
Format : Littéral de script ou Variable de script
Code retour
Référence au dernier sous-élément
" " - L'élément n'a pas de sous-élément.
Remarques
La fonction script détermine le dernier sous-élément d'un élément dans le document XML.
Pour que la fonction script accède au dernier sous-élément, une référence doit lui être transmise. Cette
référence indique la position dans le document XML. Le tout premier descripteur est celui retourné par
XML_OPEN. Il renvoie, par exemple, à l'élément racine "Content" de la documentation structurée.
XML_GET_LAST_CHILD descend d'un niveau dans la structure, en partant de l'élément indiqué.
XML_GET_NEXTSIBLING au contraire sert à déterminer l'élément suivant au même niveau.
Exemple
Dans l'exemple suivant, le nom du dernier sous-élément "Info" est déterminé à partir de l'élément principal
"Content".
170
Chapter 3 Organisation fonctionnelle
:SET &XMLDOCU# = XML_OPEN(DOCU,"DISPOSITION","@Details")
:SET &HND# = XML_GET_LAST_CHILD(&XMLDOCU#)
:
:
:
:
:
:
IF &HND# <> ""
SET &NOM# = XML_GET_NODE_NAME(&HND#)
PRINT "Dernier sous-élément : &NOM#"
ELSE
PRINT "Pas de sous-élément."
ENDIF
:XML_CLOSE
Rubriques connexes :
Elément de script
Description
XML_GET_FIRST_CHILD
Détermine le premier sous-élément d'un élément
XML_GET_NEXTSIBLING
Détermine l'élément suivant.
Elément de script - Lecture ou modification d'objets
Documentation structurée
www.w3c.org/TR/xmlbase
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.32 XML_GET_NEXTSIBLING
Fonction script : Détermine l'élément suivant.
Syntaxe
XML_GET_NEXTSIBLING (référence)
Automation Engine
Elément de syntaxe
Description/format
Référence
Référence à l'élément dont vous souhaitez déterminer le successeur
Format : Littéral de script ou Variable de script
Codes retour
Référence à l'élément suivant de même niveau.
" " - L'élément n'est suivi d'aucun élément.
Remarques
La fonction de script détermine l'élément de même niveau suivant dans le document XML.
Pour que la fonction de script accède à l'élément suivant, une référence doit lui être transmise. Cette
référence est utilisée par certains scripts pour se positionner dans le document XML et le modifier.
Si XML_GET_NEXTSIBLING sert à déterminer l'élément de même niveau suivant, XML_GET_
FIRST_CHILD permet de connaître le premier sous-élément.
Exemple
Le premier sous-élément, nommé "Description", constitue le point de départ de l'exemple. Tous les
éléments de même niveau suivants sont déterminés et affichés dans le protocole d'activation. En
l'occurrence, il s'agit uniquement de l'élément "Contacts".
:SET &XMLDOCU# = XML_OPEN(DOCU,"DISPOSITION","@Détails")
:SET &HND# = XML_GET_FIRST_CHILD(&XMLDOCU#)
:
:
:
:
:
WHILE &HND# <> ""
SET &NOM# = XML_GET_NODE_NAME(&HND#)
PRINT "Elément : &NOM#"
SET&HND# = XML_GET_NEXTSIBLING(&HND#)
ENDWHILE
:XML_CLOSE
171
172
Chapter 3 Organisation fonctionnelle
Rubriques connexes :
Elément de script
Description
XML_GET_FIRST_CHILD
Détermine le premier sous-élément d'un élément
Elément de script - Lecture ou modification d'objets
Documentation structurée
www.w3c.org/TR/xmlbase
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.33 XML_GET_NODE_NAME
Fonction script : indication du nom d'un élément.
Syntaxe
XML_GET_NODE_NAME (référence)
Elément de syntaxe
Description/format
Référence
Référence à un l'élément dont vous souhaitez déterminer le nom
Format : Littéral de script ou Variable de script
Code retour
Nom de l'élément
Remarques
Cette fonction de Script permet de lire le nom d'un élément dans un document XML.
La référence de l'élément doit être transmise à la fonction de script. Cette dernière est fournie par des
scripts qui peuvent se positionner dans le document XML, comme XML_GET_FIRST_CHILD, XML_
GET_NEXTSIBLING ou XML_SELECT_NODE.
XML_OPEN indique la référence du premier élément.
La fonction de script ne peut traiter plus de 1024 caractères. Sinon, elle ne renvoie aucun code retour.
Faites par conséquent attention à la longueur du nom de l'élément.
Exemple
L'exemple détermine tous les éléments situés au même niveau. Leurs noms ("Description" et "Contacts")
sont affichés dans le rapport d'activation.
Automation Engine
:SET &XMLDOCU# = XML_OPEN(DOCU,"DISPOSITION","@Détails")
:SET &HND# = XML_GET_FIRST_CHILD(&XMLDOCU#)
:
:
:
:
:
WHILE &HND# <> ""
SET &NOM# = XML_GET_NODE_NAME(&HND#)
PRINT "Elément : &NOM#"
SET&HND# = XML_GET_NEXTSIBLING(&HND#)
ENDWHILE
:XML_CLOSE
Rubriques connexes :
Elément de script
Description
XML_GET_NODE_TEXT
indication du texte d'un élément.
Elément de script - Lecture ou modification d'objets
Documentation structurée
www.w3c.org/TR/xmlbase
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.34 XML_GET_NODE_TEXT
Fonction script : indication du texte d'un élément.
Syntaxe
XML_GET_NODE_TEXT (référence)
Elément de syntaxe
Description/format
173
174
Chapter 3 Organisation fonctionnelle
Référence
Référence à l'élément dont vous souhaitez déterminer le texte
Format : Littéral de script ou Variable de script
Codes retour
Texte de l'élément.
" " - L'élément n'a pas de texte.
Remarques
Cette fonction de script permet de lire le texte d'un élément dans un document XML.
Pour que la fonction de script accède à l'élément, une référence doit lui être transmise. Cette dernière est
fournie par des scripts qui peuvent se positionner dans le document XML, comme XML_GET_FIRST_
CHILD, XML_GET_NEXTSIBLING, XML_SELECT_NODE ou XML_OPEN.
La fonction de script XML_GET_ATTRIBUTE permet d'obtenir le contenu d'un attribut de type texte.
La fonction de script ne peut traiter plus de 1024 caractères. Sinon, elle ne renvoie aucun code retour.
Faites par conséquent attention à la longueur du texte de l'élément.
Exemple
L'exemple suivant renvoie le texte "Objets correspondants" de l'élément "Objets" dans le protocole
d'activation.
:SET &XMLDOCU# = XML_OPEN(DOCU,"DISPOSITION","@Détails")
:SET &HND# = XML_GET_FIRST_CHILD(&XMLDOCU#)
:SET &HND# = XML_GET_FIRST_CHILD(&HND#)
:WHILE &HND# <> ""
:
SET &NOM# = XML_GET_NODE_NAME(&HND#)
:
SET &TXT#= XML_GET_NODE_TEXT(&HND#)
:
PRINT "Texte de l'élément &NOM#: &TXT#"
:
SET &HND#= XML_GET_NEXTSIBLING(&HND#)
Automation Engine
:ENDWHILE
:XML_CLOSE
Rubriques connexes :
Elément de script
Description
XML_GET_NODE_NAME
indication du nom d'un élément.
Elément de script - Lecture ou modification d'objets
Documentation structurée
www.w3c.org/TR/xmlbase
Exemples
Détermination du message d'erreur et du numéro de l'erreur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.35 XML_OPEN
Fonction script : Ouvre un document XML en vue du traitement.
Syntaxe
XML_OPEN (source, [nom d'objet], @documentation)
XML_OPEN (source, [RunID], Rapport )
Elément de syntaxe
Description/format
Source
Origine du document XML
Format : Nom UC4, Littéral de script ou Variable de script
Valeurs autorisées : "DOCU" et "REPORT"
"DOCU" - Documentation structurée
"REPORT" - Rapport d'un Job SAP
Pour les documentations structurées
Nom d'objet
Nom de l'objet
Format : Littéral de script ou Variable de script
S'il s'agit de l'onglet de l'objet considéré, ce paramètre est facultatif.
Documentation
Nom de l'onglet de documentation commençant par "@"
Format : Littéral de script ou Variable de script
Pour les rapports
RunID
Numéro courant (RunID) de la tâche dont le rapport doit être ouvert.
Format : Littéral de script ou Variable de script
S'il s'agit du rapport de l'objet considéré, ce paramètre est facultatif.
Rapport
Type du rapport XML
175
176
Chapter 3 Organisation fonctionnelle
Code retour
Référence du document XML
Remarques
La fonction de Script ouvre un document XML en vue du traitement. Il peut s'agir d'une documentation
structurée ou du rapport d'un Job SAP.
Pour ajouter des descriptions et explications plus précises aux objets, vous pouvez utiliser les onglets de
documentation. Ces derniers sont définis dans les variables UC4 UC_OBJECT_DOCU de chaque type
d'objet. Caractérisée par un "@" placé en tête, la documentation structurée constitue une forme spéciale
d'affichage. Vous pouvez lire la documentation structurée avec des scripts spéciaux.
Les rapports des Jobs SAP sont enregistrés sous forme de documents XML. Ils contiennent, par exemple
pour XI_GET_CHANNEL, la liste des canaux de communication sélectionnés.
Le code retour de la fonction de Script est un descripteur, la référence du document XML. Ce descripteur
est utilisé comme paramètre par certains scripts avec lesquels vous modifiez le document XML.
:XML_CLOSE ferme le document XML.
Vous ne pouvez ouvrir qu'un seul document XML à la fois.
La fonction de Script XML_OPEN_DOCU a été renommée XML_OPEN dans la version 6.00A.
L'ancien style d'écriture est toujours pris en charge.
Exemple
L'onglet "Détails" de l'objet "GS.JOUR" est ouvert pour être complété.
:SET &DOCUXML# = XML_OPEN(DOCU,"GS.JOUR", "@Détails")
Rubriques connexes :
Elément de script
Description
:XML_CLOSE
Fermeture d'un document XML.
Elément de script - Lecture ou modification d'objets
Documentation structurée
www.w3c.org/TR/xmlbase
Exemples
Détermination du message d'erreur et du numéro de l'erreur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
Automation Engine
177
3.4.36 XML_PRINTINTOFILE
Fonction script : affichage de la structure des éléments dans un fichier XML.
Syntaxe
XML_PRINTINTOFILE (fichier, référence)
Elément de syntaxe
Description/format
Fichier
Nom et chemin du fichier XML
Format : Littéral de script ou Variable de script
Référence
Référence à l'élément dont vous souhaitez afficher la structure
Format : Littéral de script ou Variable de script
Code retour
"0" - La structure a bien été écrite dans le fichier.
Remarques
La fonction de script écrit la structure d'un élément et de tous ses sous-éléments dans un fichier XML
donné.
Pour que la fonction de script accède à un élément, une référence doit lui être transmise. Cette dernière est
fournie par des scripts qui peuvent se positionner dans le document XML, comme XML_GET_FIRST_
CHILD, XML_GET_NEXTSIBLING ou XML_SELECT_NODE. La fonction de script affiche cet élément,
ses sous-éléments et les attributs correspondants dans un fichier.
Vous pouvez également utiliser la référence retournée par XML_OPEN pour afficher l'intégralité de la
structure.
Les informations de la structure de l'élément sont écrites les unes à la suite des autres (sans retour à la
ligne) dans le fichier indiqué. Ce fichier est par conséquent difficilement lisible si vous l'ouvrez avec un
éditeur de texte tel que le Bloc-notes. Avant d'appliquer la fonction de script, vous pouvez utiliser XML_
BEAUTIFY pour présenter le contenu du fichier de façon à ce qu'il soit plus lisible. Mais vous avez
également la possibilité d'afficher le fichier dans Microsoft Internet Explorer par exemple. La structure de
l'élément apparaît alors clairement.
Attention : si un fichier existe déjà, il est remplacé sans qu'aucun message de demande de
confirmation n'apparaisse.
Exemple
L'intégralité de la structure de la documentation est tout d'abord préparée afin d'être plus lisible, puis
affichée dans le fichier "Docu.xml".
:SET &XMLDOCU# = XML_OPEN(DOCU,,"@Détails")
:SET &RET1#= XML_BEAUTIFY(&XMLDOCU#)
:SET &RET2# = XML_PRINTINTOFILE("C:\UC4\XML_
Documentation\Docu.xml",&XMLDOCU#)
:XML_CLOSE
178
Chapter 3 Organisation fonctionnelle
Le second exemple affiche dans un fichier les éléments "Description" et "Objets", ainsi que leurs attributs.
:SET &XMLDOCU# = XML_OPEN(DOCU,"DISPOSITION","@Détails")
:SET &HND# = XML_GET_FIRST_CHILD(&XMLDOCU#)
:SET &RET1#= XML_BEAUTIFY(&HND#)
:SET &RET2# = XML_PRINTINTOFILE("C:\UC4\XML_Documentation\Docu.xml",&HND#)
:XML_CLOSE
Rubriques connexes :
Elément de script
Description
XML_BEAUTIFY
Préparation du style d'affichage de la structure d'un élément.
Elément de script - Lecture ou modification d'objets
Documentation structurée
www.w3c.org/TR/xmlbase
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.4.37 XML_SELECT_NODE
Fonction script : Détermination d'un élément quelconque
Syntaxe
XML_SELECT_NODE(référence, élément)
Elément de syntaxe
Description/format
Référence
Référence à l'élément servant de point de départ
Format : Littéral de script ou Variable de script
Elément
Nom de l'élément recherché, accompagné du chemin à partir du point de
départ
Format : Littéral de script ou Variable de script
Codes retour
Référence à l'élément recherché.
" " - L'élément recherché n'existe pas.
Remarques
La fonction de Script détermine un élément quelconque dans le document XML.
Pour que la fonction de Script se positionne dans un premier temps au niveau d'un élément, une référence
doit lui être transmise. Cet élément constitue le point de départ de la recherche dans la structure.
L'élément (indiqué avec son chemin) est recherché à partir de cet emplacement.
Automation Engine
179
Les références sont utilisées par certains scripts pour se positionner dans le document XML et le modifier.
La toute première référence est celle retournée par XML_OPEN. Elle renvoie à l'élément racine. Elle peut
être utilisée par XML_SELECT_NODE pour déterminer un élément directement à partir de cet
emplacement. La fonction de Script peut également obtenir la référence à l'aide de XML_GET_FIRST_
CHILD ou de XML_GET_NEXTSIBLING. Vous disposez donc de moyens souples pour accéder aux
éléments des structures très complexes.
Attention : la recherche porte uniquement sur les éléments qui constituent un sous-élément du point de
départ.
Exemple
L'exemple détermine un élément directement à partir de l'élément racine "Content". Le texte de l'élément
"Objets" est affiché dans le rapport d'activation.
:SET &XMLDOCU# = XML_OPEN(DOCU,"DISPOSITION","@Détails")
:SET&HND# = XML_SELECT_NODE(&XMLDOCU#, "Description/objets")
:SET &TEXT# = XML_GET_NODE_TEXT(&HND#)
:PRINT "Texte de l'élément : &TEXT#"
:XML_CLOSE
Rubriques connexes :
Elément de script - Lecture ou modification d'objets
Documentation structurée
www.w3c.org/TR/xmlbase
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
180
Chapter 3 Organisation fonctionnelle
3.5 Elaboration et traitement des Scripts
3.5.1 :DATA
Instruction de script : déclare explicitement une ligne de Script en tant que ligne DATA.
Syntaxe
:DATA Instruction
Elément de syntaxe
Description/format
Instruction
Instruction pour le système cible.
Format : Littéral de script ou Variable de script
Remarques
Les lignes DATA contiennent des instructions pour les étapes de traitement dans le système cible.
Toutes les lignes de Script autres que les lignes de commentaires (commençant par un point
d'exclamation) ou les instructions de Script (introduites par un signe deux-points) sont automatiquement
considérées comme des lignes DATA. Cependant, si une telle ligne DATA commence elle-même par deux
points, cela crée un conflit car les instructions de Script sont également caractérisées par deux points.
Dans ce cas, la ligne DATA doit être déclarée de manière explicite à l'aide de l'instruction :DATA-.
Il est également possible d'écrire l'instruction sans guillemets. Dans ce cas on tient compte de tous les
caractères jusqu'à la fin de la ligne. Les Variables de Script contenues dans l'instruction sont remplacées.
Les lignes DATA ne peuvent être utilisées que dans le type d'objet Job.
Exemple
Cet exemple d'un traitement batch sur PC définit une ramification inconditionnelle vers un libellé à partir
duquel il faut effectuer un traitement des erreurs. Comme les libellés dans un traitement batch sur PC
commencent avec un signe deux-points, cette ligne DATA doit être explicitement exécutée avec
l'instruction :DATA.
!...
MESSAGE D'ERREUR GOTO
!...
: DATA ":MESSAGE D'ERREUR"
!...
Rubriques connexes :
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
Automation Engine
181
3.5.2 :DEFINE
Instruction de script : Déclaration d'une Variable de script avec un type spécifique de données.
Syntaxe
:D[EFINE] nom de Variable, type de données [, taille du tableau]
Elément de syntaxe
Description/format
Nom de Variable
Nom de la Variable de script qui est de nouveau créée en indiquant le type de
données.
Format : Variable de script
Type de données
Type de données de la Variable déclarée.
Valeurs autorisées : "unsigned", "string", "float" ou "signed"
unsigned : nombres entiers positifs sans signes
signed : nombres entiers avec signes
float : nombres à virgule flottante
string : chaîne de caractères, texte
L'indication des types de données s'effectue sans guillemet !
Taille du tableau
Si la Variable de script doit être créée sous forme de tableau, la taille est
définie via ce paramètre.
Format : nombre sans guillemets
Valeurs autorisées :
1 à 99 999
Remarques
Il est possible de créer des Variables de script directement avec le script :SET. L'attribution de la valeur
s'effectue alors simultanément. Ceci est cependant uniquement autorisé si les valeurs indiquées
correspondent aux types de données "string" ou "unsigned" ! Si la Variable est affectée à un nombre à
virgule flottante ou à un nombre négatif, une erreur de script apparaît.
Toute déclaration de Variables qui ont déjà été utilisées est impossible ! Ceci est applicable pour les
Variables d'objets et script, y compris les définitions dans l'onglet "Variables & Prompts" !
L'attribution directe de la valeur d'un autre type de données fonctionne uniquement pour les Variables de
script qui ont été créées avec :SET et uniquement avec des nombres entiers positifs et des chaînes !
Il est impossible d'attribuer une valeur à une Variable de script déclarée qui ne se trouve pas dans la plage
autorisée du type de données défini !
Si lors de l'utilisation du script :DEFINE, aucun type de données ou un type de données non valide est
indiqué, une erreur de script apparaît.
Les différents types de données possèdent les plages de valeurs suivantes :
Type de données
Plage de valeurs
unsigned
0 à +9 999 999 999 999 999
signed
-9 999 999 999 999 999 à +9 999 999 999 999 999
182
Chapter 3 Organisation fonctionnelle
string
de 1 à 1 024 caractères
flottant
-9999999999999999.9999999999999999 à
+9999999999999999.9999999999999999
L'indication du paramètre Taille du tableau permet de créer la Variable de script sous forme de tableau
avec la longueur définie. La taille ne doit alors pas dépasser la valeur 99 999. Attention aux spécificités
d'utilisation des Tableaux de script. Les crochets [] ne sont pas nécessaires dans la déclaration du
tableau.
Utilisez l'instruction de script :FILL pour remplir les tableaux de script avec plusieurs valeurs différentes.
Exemples
Déclaration de plusieurs Variables avec différents types de données et attribution de valeur consécutive :
:DEFINE &a#, unsigned
:DEFINE&b#, signed
:DEFINE&c#, float
:DEFINE&d#, string
:SET&a# = 12
:SET&b# = -5
:SET&c# = 0.50
:SET&d# = "string"
L'attribution suivante génère une erreur, car les types de données ne correspondent pas :
:DEFINE &unsigned#, unsigned
:DEFINE &string#, signed
:SET &unsigned# = 12
:SET &string# = &unsigned#
Dans l'exemple suivant, l'attribution est valable, car la Variable "&unsigned#" avec la fonction script
CONVERT est convertie dans le type de données approprié :
:DEFINE&unsigned#, unsigned
:DEFINE&string#, signed
:SET&unsigned# = 12
:SET&string# = CONVERT(string,&unsigned#)
Si une Variable de script est créée avec le script :SET, une attribution directe de la valeur des types de
données "unsigned" et "string" est possible.
:SET&setvar#= 12
:SET&setvar2#="string"
:SET&setvar# = &setvar2#
Le dernier exemple montre la création et le remplissage d'un tableau avec les valeurs à partir d'un objet
Variable.
:DEFINE&array#, unsigned, 5
:FILL&array#[] = GET_VAR(VARA1, ARRAY)
Rubriques connexes :
Elément de script
Description
:SET
Attribue une valeur à une Variable de script.
Scripts - Elaboration et traitement des scripts
Automation Engine
183
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.3 :EXT_REPORT_OFF
L'instruction de script: désactive la journalisation du script d'une Tâche.
Syntaxe
:EXT_REPORT_OFF
Remarque
Le rapport de script est également compris dans le rapport détaillé qui contient l'intégralité des lignes de
script de l'objet. Par défaut, il n'est pas créé et doit être ainsi activé par l'administrateur UC4 dans la
variable UUC_CLIENT_SETTINGS d'UC4, à l'aide de la Clef "EXT_REPORTS". Il est également
possible de réaliser cela pour un seul objet dans l'onglet En-tête.
Utilisez l'instruction de script :EXT_REPORT_OFF lorsque chaque ligne de script ou l'intégralité du script
ne doit pas être comprise dans le rapport. La journalisation est suspendue jusqu'à la fin de script ou
l'instruction :EXT_REPORT_ON.
Dans le rapport de script, une ligne de conseil s'affiche, indiquant le nombre de lignes de script qui ne sont
pas journalisées.
**** EXT_REPORT_OFF_ON: 0005 lignes supprimées ***
Attention : les contenus des Includes doivent également être journalisés si le paramètre EXT_
REPORT=OFF n'est pas utilisé lors de leur Appel.
Exemple
La journalisation d'une partie du script est ignorée dans l'exemple.
:EXT_REPORT_OFF
:INC JOCO2UC.SET.GLOBALS
:PUT_ATT FT_SRC_FILE = '$&JOCO_USERID.&COB85_ERRLST_PREF_BS2.&PRGMNAME'
:PUT_ATT FT_DST_FILE = '&PC_PATH\&PRGMNAME_ERRLST.TXT'
:EXT_REPORT_ON Rubriques connexes :
Elément de script
Description
:EXT_REPORT_ON
Active la journalisation du script d'une Tâche.
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
184
Chapter 3 Organisation fonctionnelle
3.5.4 :EXT_REPORT_ON
L'instruction de script: active la journalisation du script d'une Tâche.
Syntaxe
:EXT_REPORT_ON
Remarque
Le rapport de script est également compris dans le rapport détaillé qui contient l'intégralité des lignes de
script de l'objet. Par défaut, il n'est pas créé et doit être ainsi activé par l'administrateur UC4 dans la
variable UUC_CLIENT_SETTINGS d'UC4, à l'aide de la clé "EXT_REPORTS". Il est également possible
de réaliser cela pour un seul objet dans l'onglet En-tête.
Utilisez l'instruction de script :EXT_REPORT_OFF lorsque chaque ligne de script ou l'intégralité du script
ne doit pas être comprise dans le rapport. La journalisation est suspendue jusqu'à la fin de script ou
l'instruction :EXT_REPORT_ON.
Beachten Sie, dass auch die Inhalte von Includes protokolliert werden, sofern bei deren Aufruf nicht der
Parameter EXT_REPORT=OFF verwendet wurde.
Exemple
La journalisation d'une partie du script est ignorée dans l'exemple.
:EXT_REPORT_OFF
:INC JOCO2UC.SET.GLOBALS
:PUT_ATT FT_SRC_FILE = "$&JOCO_USERID.&COB85_ERRLST_PREF_BS2.&PRGMNAME"
:PUT_ATT FT_DST_FILE = "&PC_PATH\&PRGMNAME_ERRLST.TXT"
:EXT_REPORT_ON Rubriques connexes :
Elément de script
Description
:EXT_REPORT_OFF
Désactive la journalisation du script d'une Tâche.
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.5 :FILL
Instruction de script : Enregistre plusieurs valeurs dans un Tableau de script.
Syntaxe
:FILL Tableau de script =Valeurs
Automation Engine
Elément de syntaxe
Description/format
Tableau de script
Nom de la Variable de script qui a été définie comme tableau. Les crochets
doivent être indiqués sans contenu.
Format : Variable de script
Valeurs
Valeurs qui doivent être enregistrées dans le tableau. Les fonctions de script
GET_PROCESS_LINE ou GET_VAR doivent être utilisées.
Format : Fonction script
185
Remarques
La fonction script sert à enregistrer plusieurs valeurs simultanément dans un tableau de script. Les
tableaux doivent être créés avant l'attribution de valeur avec :DEFINE après spécification de la taille du
tableau. Pour le transfert des valeurs, la fonction script GET_PROCESS_LINE, STR_SPLIT ou GET_
VAR doit être utilisée. Les valeurs sont toujours inscrites à partir du premier élément (index = 1) dans le
tableau.
Si le nombre de valeurs à enregistrer dépasse la capacité du tableau, seules les premières valeurs qui
trouvent une place dans le tableau sont enregistrées. Si le tableau est plus grand que les valeurs
déterminées, les valeurs restantes sont inchangées.
Le tableau de script doit être indiqué avec des crochets vides [].
Exemple
Dans le premier exemple, les valeurs d'un objet Variable sont enregistrées avec GET_VAR dans le
tableau.
:DEFINE&ARRAY#, string, 20
:FILL&ARRAY#[] = GET_VAR(VARA.TEST, KEY1)
:PRINT"Première valeur de la variable VARA.TEST de la Clé KEY1: &ARRAY#[1]"
Dans le deuxième exemple, les colonnes de la première ligne d'un fichier log (UC4 Automation Engine)
sont enregistrées dans le tableau.
:DEFINE&ARRAY#, string, 20
:SET&HND# = PREP_PROCESS_FILE(WIN01, "C:\UC4\AUTOMATIONENGINE\TEMP\CPsrv_
log_001_00.txt""*""COL=LENGTH""LENGTH_
TAB,,,='8=DATUM,1,6=ZEIT,7,200=TEXT'")
: FILL&ARRAY#[] = GET_PROCESS_LINE(&HND#)
:SET &RUNVAR# = 1
:SET &LEN# = LENGTH(&ARRAY#[])
:WHILE &RUNVAR# < &LEN#
:P"Line &RUNVAR#: &ARRAY#[&RUNVAR#]"
:SET &RUNVAR# = &RUNVAR# + 1
:ENDWHILE Rubriques connexes :
Elément de script
Description
GET_PROCESS_LINE
Détermine le contenu actuel des lignes d'une séquence de données.
GET_VAR
Indique la valeur d'un objet Variable.
186
Chapter 3 Organisation fonctionnelle
FIND
Recherche un Tableau de script et retourne l'Index correspondant.
LENGTH
Détermine la longueur d'un Tableau de script.
Elément de script - Séquences de données
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.6 :GENERATE
Instruction de script : Contrôle la gestion des lignes de script pendant le traitement du script.
Syntaxe
:GEN[ERATE] Mode de génération
Elément de syntaxe
Description/format
Mode de génération
Modes de génération pour la reprise :
l
l
l
ON_RESTART_ALWAYS
Les lignes de script sont toujours exécutées, indépendamment du
point de reprise.
ON_RESTART_CHECK
Les lignes de script ne sont pas exécutées lorsqu'elles se trouvent
avant le point de reprise.
ON_RESTART_NEVER
Les lignes de script ne sont jamais exécutées, indépendamment du
point de reprise.
Modes de génération pour les lignes DATA :
l
l
l
UPPER_CASE
Transformation du texte de toutes les lignes DATA en majuscules.
LOWER_CASE
Transformation du texte de toutes les lignes DATA en minuscules.
CASE_UNCHANGED
Rétablit l'état initial de la casse. Aucune conversion n'est effectuée.
Remarques
Plusieurs expressions peuvent être passées à l'instruction :GENERATE en tant que mode de génération.
Le mode de génération contrôle d'une part la gestion des lignes de script pendant la reprise d'un objet
activable. D'autre part, il permet de définir la casse dans les lignes DATA.
Reprise d'objets activables
Lors de la reprise d'objets activables, on peut définir grâce au mode de génération la manière dont les
lignes de script doivent être gérées lors du traitement de script. Cette définition reste valable jusqu'à la
prochaine instruction :
l
l
:GENERATE contenant un des trois modes de génération pour la reprise, ou
jusqu'à la prochaine instruction :RESTART.
Automation Engine
187
Si on n'utilise pas l'instruction :GENERATE, toutes les lignes de script sont traitées jusqu'à la première
instruction :RESTART lors de la reprise et en outre, les lignes qui se trouvent après le point de reprise
indiqué.
Majuscules et minuscules
En général, le texte des lignes DATA d'un script est conservé et transféré au système cible tel qu'il a été
installé. Les Variables de script qui apparaissent dans les lignes DATA constituent une exception. Ces
Variables sont fournies et modifiées en conséquence lors de l'activation d'un objet contenant un tel script.
Pour certains systèmes cibles, il peut être nécessaire de transférer les lignes DATA d'un script dans un
certain style d'écriture. Par exemple, le système d'exploitation BS2000 ne traite que le langage JCL (Job
Control Language) en majuscules, de sorte que les Scripts de la plate-forme UC4 Automation doivent être
préparés en conséquence. L'instruction :GENERATE met à votre disposition différents modes de
génération qui vous permettent de créer des scripts indépendamment des restrictions de chaque système
cible.
Exemples
Le premier exemple montre l'application lors de la reprise d'objet et les différentes sorties dans le rapport
qui résultent des points de reprise.
:PRINT "Début du script"
:RESTART R1
:PRINT "Point R1"
:GENERATEON_RESTART_ALWAYS
:PRINT "ON_RESTART_ALWAYS"
:GENERATEON_RESTART_CHECK
:RESTART R2
:PRINT "Point R2"
:RESTART R3
:PRINT "Point R3"
:GENERATEON_RESTART_NEVER
:PRINT "Fin du script"
Reprise à partir de R1 :
2005-01-31
2005-01-31
2005-01-31
2005-01-31
2005-01-31
12:17:05
12:17:05
12:17:05
12:17:05
12:17:05
-
U0020408
U0020408
U0020408
U0020408
U0020408
Début du script
Point R1
ON_RESTART_ALWAYS
Point R2
Point R3
-
U0020408
U0020408
U0020408
U0020408
Début du script
ON_RESTART_ALWAYS
Point R2
Point R3
Reprise à partir de R2 :
2005-01-31
2005-01-31
2005-01-31
2005-01-31
12:17:23
12:17:23
12:17:23
12:17:23
Reprise à partir de R3 :
2005-01-31 12:17:48 - U0020408 Début du script
2005-01-31 12:17:48 - U0020408 ON_RESTART_ALWAYS
2005-01-31 12:17:48 - U0020408 Point R3
188
Chapter 3 Organisation fonctionnelle
Le second exemple montre la transformation du texte des lignes DATA d'un script en majuscules.
:GEN UPPER_CASE
fs $uc4.
Rubriques connexes :
:RESTART
Définit des points de reprise dans un objet activable.
Scripts - Elaboration et traitement des scripts
Reprise d'objets activables
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.7 :IF... :ELSE... :ENDIF
Instructions de script : Analyser et exécuter une expression suivant les instructions du résultat.
Syntaxe
:IF Condition
[Instructions]
[:ELSE]
[Instructions Sinon]
:ENDIF
Elément de syntaxe
Description/format
Condition
Une expression formulée au moyen d'un littéral de script, d'une variable de
script, d'une fonction de script, d'expressions numériques ou d'opérateurs, et
qui fournit un résultat "Vrai" ou "Faux".
Instructions
Une ou plusieurs instructions qui sont exécutées lorsque la condition fournit la
valeur "Vrai".
Format : Instruction de script
Instructions Sinon
Une ou plusieurs instructions qui sont exécutées lorsque la condition fournit la
valeur "Faux".
Format : Instruction de script
Remarques
L'instruction IF est une structure de contrôle avec laquelle vous pouvez traiter le script en fonction du
résultat d'une condition. Il s'agit alors d'une expression logique.
Si la condition est remplie ("Vrai"), les instructions sont exécutées.
Si la condition n'est pas remplie ("Faux"), les instructions Sinon de :ELSE sont exécutées. Si le bloc IF ne
comporte aucune branche :ELSE, le script est poursuivi avec la prochaine ligne après :ENDIF.
Vous pouvez également emboîter des blocs IF, sans limitation de profondeur.
Automation Engine
189
Un bloc IF ne doit pas nécessairement contenir une branche ELSE.
Le mot-clé OR permet de lier une condition avec plusieurs valeurs ou plusieurs conditions individuelles.
Une condition a la structure suivante :
ValeurOpérateur de comparaisonValeur de comparaison[OR Valeur de comparaison...]
Exemple :
:IF &ABT# = "EDV" OR "UC4"
Jusqu'à 13 OU doivent exister dans la condition.
La formulation d'une condition contient l'un des opérateurs de comparaison suivants :
Opérateur Code Règle
=
EQ
L'expression est "Vrai" lorsqu'au moins une valeur de comparaison correspond à la
valeur.
<>
NE
L'expression est "Vrai" lorsqu'aucune valeur de comparaison n'est égale à la
valeur.
<
>
<=
>=
LT
GT
LE
GE
L'expression est "Vrai" lorsqu'une valeur de comparaison remplit la clef indiquée.
Comme les Variables de script n'ont pas un type de données explicite et peuvent donc contenir aussi bien
des chiffres que des chaînes de caractères, il faut respecter les points suivants lors des comparaisons :
La comparaison est toujours numérique lorsque le contenu des valeurs de comparaison est numérique. Le
fait qu'une Variable soit indiquée avec ou sans apostrophes n'a donc aucune importance.
La condition suivante retourne "Vrai" :
:IF "0" = "0"
S'il n'y a aucune valeur numérique, la comparaison qui en résulte est alphanumérique.
La condition suivante retourne "Faux" :
:IF "0" = "abc"
La longueur des chaînes de caractères n'est pas vérifiée lors de la comparaison. La condition suivante
retourne "Vrai", car "M" précède "U" dans l'alphabet.
:IF "Henri" < "UC4"
Vous devez prédéfinir les Variables de script qui apparaissent dans la condition.
Pour les conditions qui contiennent plusieurs fois le mot-clé OR, un comportement différent peut se
produire, en fonction de l'opérateur.
Exemple :
dans ce cas, l'une des valeurs doit convenir afin de remplir la condition.
:IF &WD# = "LU" OR "MA" OR "ME"
La condition suivante est cependant uniquement remplie lorsque la Variable ne correspond à aucune des
trois valeurs.
190
Chapter 3 Organisation fonctionnelle
:IF &WD# <> "JE" OR "VE" OR "SA"
Exemples
Ces exemples montrent différentes possibilités de formulation de la condition. Alors que les exemples 1 à
3 mettent en relation une Variable de script avec une ou plusieurs valeurs de comparaison, l'exemple 4
analyse le code retour d'une fonction de script.
:IF &UTILISATEUR# = "TSOS"
!...
:ENDIF :IF &DAT1# EQ &DAT2# OR " "
!...
:ENDIF :IF &UTILISATEUR# <> "TSOS" OR "SERVICE" OR SYS_USER_NAME()
!...
:ENDIF :IF GET_ATT(OO) = "J"
!...
:ENDIF
Rubriques connexes :
Elément de script
Description
:WHILE... :ENDWHILE
Définition d'une boucle permettant de répéter l'exécution de parties du script.
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.8 :INCLUDE
Instruction de script : Associe un objet Include à un script.
Syntaxe
:INC[LUDE] objet Include [ChaîneAncienne = ChaîneNouvelle][,NOFOUND=IGNORE][,EXT_
REPORT=OFF]
Elément de syntaxe
Description/format
Objet Include
Nom de l'objet Include à associer.
Entrez le nom complet de l'objet Include. Les Variables de Script ne sont pas
autorisées.
ChaîneAncienne
Chaîne de caractères du Script de l'objet Include qui doit être remplacée par
ChaîneNouvelle.
Format : Littéral de script
Automation Engine
ChaîneNouvelle
191
Chaîne de caractères qui remplace ChaîneAncienne dans le Script de l'objet
Include.
Format : Littéral de script
50 caractères maximum
NOFOUND=IGNORE
Si l'objet Include indiqué n'est pas trouvé, aucune erreur ne se produit.
EXT_REPORT=OFF
Le contenu de l'objet Include n'est pas consigné dans les rapports détaillés.
Au lieu de cela, une ligne de conseil s'affiche.
Remarques
Dans les Scripts UC4, de nombreux objets suivent les mêmes étapes de traitement. Pour ne pas avoir à
les écrire et à les gérer dans chaque Script, il existe les objets Include. Ceux-ci comportent dans leur
Script les éléments de Scripts récurrents et souvent utilisés.
Pour faire communiquer un objet Include avec un autre objet, on utilise l'instruction :INCLUDE. Le Script
de l'objet Include est généré en plus lors de l'activation de l'objet.
ChaîneAncienne et ChaîneNouvelle sont optionnels. Ces instructions peuvent être utilisées pour
remplacer une chaîne de caractères de l'objet Include par une nouvelle chaîne. Cette attribution n'est
valide que pour la génération en cours et ne modifie pas l'objet Include.
Exemples
L'exemple illustre l'association d'un objet Include. Pour ce faire, un nouveau nom "$GSTEST." est attribué
au lieu de la chaîne de caractères "$GS." de l'objet Include.
:INC GS.ATTRIBUTIONSFICHIERS "$GS." = "$GSTEST."
Dans l'exemple, un Include Utilisateur est exécuté. S'il n'y en a pas, aucune erreur ne se produit.
:INCLUDE HEADER.WINDOWS.USER.HEAD ,NOFOUND=IGNORE
Dans le troisième exemple, on empêche que le contenu de l'objet Include soit consigné dans les rapports
détaillés.
:INC GS.ATTRIBUTIONSFICHIERS ,EXT_REPORT=OFF
Rubriques connexes :
:INC_SCRIPT
Association d'un script à un autre script du même objet.
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.9 :INC_SCRIPT
Instruction de script : Association d'un script à un autre script du même objet.
192
Chapter 3 Organisation fonctionnelle
Syntaxe
:INC_SCRIPT(ID script)
Elément de syntaxe
Description/format
ID script
Numéro qui identifie le script d'un objet.
Format : nombre sans guillemets
Valeurs autorisées : "0", "1" et "2"
"0" - Associe le script (pour les Jobs et Evènements uniquement)
"1" - Associe le Pré-traitement (pour les Jobs uniquement), associe le !Script
(pour les Evènements uniquement)
"2" - Associe le Post-traitement (pour les Jobs uniquement)
Remarques
Cette instruction de script a été implémentée, pour des raisons internes, pour qu'un script puisse être
appelé dans un en-tête. Ce script peut contenir certains attributs définis nécessaires à l'en-tête (un autre
hôte par exemple) Il vous servira par exemple à réaliser certaines demandes z/OS-JCL.
L'instruction de script peut aussi être utilisée "normalement" pour exécuter un script dans un autre script,
même plusieurs fois. Les deux scripts doivent appartenir au même objet. C'est pourquoi cette instruction
de script ne peut qu'être utilisée que dans des Jobs ou des Evènements. Seuls ceux-ci ont plusieurs
onglets pour les scripts.
Nous vous recommandons d'utiliser l'instruction de script :INCLUDE pour élaborer votre script de
manière modulaire.
Exemple
L"onglet Pré-Script d'un Job comporte une commande DIR. Le pré-script est associé à l'onglet Script.
:INC_SCRIPT (1)
Vous pouvez ensuite détecter dans le rapport de Job une exécution en double de la commande DIR. La
première fois dans l'en-tête (défini dans l'onglet "Pré-Script"). La seconde utilisation est entre l'en-tête et le
pied de page (par l'instruction de script dans l'onglet Script).
Rubriques connexes :
Elément de script
Description
:INCLUDE
Associe un objet Include à un script.
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.10 :JCL_CONCAT_CHAR
Instruction de script : création de lignes JCL jusqu'à une taille maximale de 2 Ko.
Automation Engine
193
Syntaxe
:JCL_CONCAT_CHAR [Caractères]
Elément de syntaxe
Description/format
Caractère
Caractère unique qui joue le rôle de caractère de liaison pour les lignes JCL
suivantes.
Format : Littéral de script ou Variable de script
Remarques
L'instruction de script permet d'associer plusieurs lignes d'un script comprenant un JCL à une seule ligne
JCL. Ce traitement se produit à la génération du Job. Les lignes JCL ainsi constituées peuvent contenir
jusqu'à 2047 caractères. Toutefois, la longueur de chaque ligne de script est limitée à 1024 caractères.
L'instruction de script crée ainsi une autre possibilité de contourner la limitation de longueur d'une ligne de
script. Ceci n'était possible auparavant que par la variable de script dans le JCL. En remplaçant les
variables lors du traitement du script, on peut alors générer des lignes JCL ayant plus de 1024 caractères.
Les lignes de script qui doivent constituer une ligne JCL se terminent par le caractère indiqué. Les lignes
de script sont associées les unes aux autres à cette position. La dernière ligne de script qui appartient à la
ligne JCL se termine sans le caractère.
Le caractère lui-même n'est pas compris dans la ligne JCL obtenue. Les espaces, qui se situent dans la
ligne de script immédiatement avant le caractère, sont repris dans la ligne JCL. Les espaces au début des
lignes de script sont éliminés. Il est ainsi possible de rappeler chaque instruction JCL. Ceci améliore la
lisibilité du script.
Plusieurs lignes JCL peuvent être composées successivement. La nouvelle exécution de l'instruction de
script sans paramètre termine ce traitement des lignes de script.
Si aucun caractère n'est indiqué lors de l'utilisation du script, il n'est pas possible de relier plusieurs
lignes JCL. L'inscription de script ne possède aucune fonction dans ce cas.
Attention : il n'est pas possible de résumer plusieurs lignes de commande ! Le script ne peut associer
que des lignes qui appartiennent à une commande.
Les lignes JCL qui sont ajoutées via l'onglet Forms par les Jobs SAP, JMX, PeopleSoft et de la base
de données, et qui sont d'une certaine longueur, sont automatiquement réparties par cet élément de script
dans plusieurs lignes. Si vous utilisez l'onglet Forms, l'élément de script ne devrait donc pas être ajouté
manuellement dans l'onglet Script de ce Job, car cela risquerait d'entraîner des problèmes !
Exemple
Dans l'exemple, l'astérisque (*) est défini comme le caractère qui permet d'associer les lignes de script.
L'exécution d'un utilitaire du serveur MS SQL s'ensuit avec certains paramètres. Le paramètre EXIT, qui
comprend une instruction SQL, se trouve dans une nouvelle ligne de script. L'instruction SQL elle-même a
été répartie sur plusieurs lignes de script.
:JCL_CONCAT_CHAR "*"
ISQL.EXE /U SA /P /S BUNTWS02 /t 10 /d UC4 /Q *
"EXIT(UPDATE OH SET OH_EXPKZ = 1 *
WHERE OH_MANDANT = 01 *
AND (OH_OTYP_TYP <> 'FOLD') *
194
Chapter 3 Organisation fonctionnelle
AND OH_LOEKZ = 0)"
:JCL_CONCAT_CHAR
Rubriques connexes :
Elément de script
Description
:JCL_SUBSTITUTE
Remplace une chaîne de caractères du JCL par une autre chaîne de
caractères.
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.11 :JCL_SUBSTITUTE
Instruction de script : Remplace une chaîne de caractères du JCL par une autre chaîne de caractères.
Syntaxe
:JCL_SUBSTITUTE [Ancienne chaîne de caractères, Nouvelle chaîne de caractères]
Elément de syntaxe
Description/format
Ancienne chaîne de
caractères
Chaîne de caractères devant être remplacée.
Format : Littéral de script ou Variable de script
Nouvelle chaîne de
caractères
Chaîne de caractères remplaçant l'ancienne chaîne de caractères.
Format : Littéral de script ou Variable de script
Remarques
A la génération d'un Job, l'instruction de Script remplace n'importe quelle chaîne de caractères dans le
JCL (Job Control Language). Le nombre de caractères dans l'ancienne chaîne de caractères peut différer
de celui de la nouvelle chaîne de caractères. On peut aussi remplacer seulement un caractère unique.
L'instruction de Script sert, par exemple, à répondre à des demandes spéciales du JCL du z/OS. On utilise
ici le caractère "&". Des conflits peuvent survenir, car ces caractères sont utilisés dans UC4 pour définir
des Variables de Script.
Les chaînes saisies sont remplacées par l'instruction de Script à partir de la ligne. Elles sont remplacées
jusqu'à la ligne du Script dans laquelle l'instruction de Script est réaffichée avec ou sans paramètre.
Exemple
Dans cet exemple, le caractère "$" est remplacé par le caractère "&".
:JCL_SUBSTITUTE "$", "&"
REPORTS=($REP)
SORT=TIME
:JCL_SUBSTITUTE
RANGE=$RAN
Automation Engine
195
Le Job généré comporte donc les lignes suivantes :
REPORTS=(&REP)
SORT=TIME
RANGE=$RAN
Rubriques connexes :
Elément de script
Description
:JCL_CONCAT_CHAR
création de lignes JCL jusqu'à une taille maximale de 2 Ko.
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.12 :PSET
Instruction de script : Attribue une valeur à une Variable d'objet.
Syntaxe
:PSET Variable d'objet = valeur
Elément de syntaxe
Description/format
Variable d'objet
Nom de la Variable d'objet avec un "&" en tête, qui doit recevoir une valeur.
Format : Variable de script
Valeur
Valeur attribuée à la Variable d'objet.
Format : littéral de script, Variable de script ou fonction script
Remarques
Les Variables d'objet sont saisies dans l'onglet "Variables & Prompts" de l'objet.
L'instruction de script définit la valeur en tant que Variable d'objet dans la Tâche et la fait passer également
aux Tâches supérieures (parents) jusqu'au processeur (par exemple, Workflow ou Schedule). Il existe une
Variable d'objet du même nom, sa valeur est ainsi écrasée par la nouvelle valeur. Autrement, l'instruction
de script ajoute la nouvelle Variable d'objet à la Tâche.
Les étapes suivantes se déroulent à l'exécution de :PSET :
1. Remplacement ou ajout de la Variable d'objet dans la Tâche elle-même.
2. Remplacement ou ajout de la Variable d'objet dans la Tâche parent.
3. Si la Tâche parent n'est pas le processeur, :PSET passe à la Tâche suivante la plus élevée et y
remplace ou ajoute la Variable d'objet.
4. La troisième étape est répétée jusqu'à ce que le processeur soit atteint.
La valeur modifiée ou la Variable d'objet supplémentaire est applicable seulement pour l'exécution de la
Tâche. La valeur elle-même n'est pas enregistrée durablement dans l'objet.
196
Chapter 3 Organisation fonctionnelle
Attention : le paramètre "Générer à l'Exécution" est très important pour les objets ! Lorsque le script a
déjà été généré, les modifications ultérieures n'ont plus d'effet sur le contenu des Variables d'objet.
Attention : les Tâches ne s'appliquent nécessairement aux Variables d'objet. Dans chaque objet, vous
définissez si des Variables d'objet doivent être héritées des Tâches supérieures et dans ce cas,
lesquelles.
Attention : :PSET ne doit pas à son tour passer les Variables d'objet auw Workflow le plus élevé dans
les Workflows imbriqués. Les Variables d'objet sont remplacées ou ajoutées uniquement dans le
Workflow contenant la Tâche qui exécute l'instruction de script.
Attention : les Variables d'objet héritées qui n'ont pas été définies dans la Tâche ne sont ensuite
disponibles en cas de reprise que lorsque la Tâche se trouve encore dans la Fenêtre d'Activités ! Si une
reprise avait été exécutée pour le Job dans l'exemple suivant, il pourrait alors accéder seulement à la
Variable d'objet &HOST# si le Transfert de Fichier et le Workflow se trouvaient encore dans la Fenêtre
d'Activités.
Exemple
Un Workflow comporte deux objets nommés "GS.DONNEES.CHERCHER" et "GS.FIN". Le paramètre
"Générer à l'Exécution" de ces deux objets est défini de sorte que leur script est créé uniquement lorsque
les objets sont dans l'ordre dans le Workflow.
Le Transfert de Fichier vérifie l'environnement et modifie la Variable d'objet &HOST# si nécessaire.
:PSET &HOST# = "unix01"
Le Job suivant utilise cette Variable d'objet dans son script. Une modification avec :PSET s'applique
également au Job, car il hérite de toutes les Variables d'objet de son parent.
Rubriques connexes :
Elément de script
Description
:RSET
Attribue une valeur à une Variable de script et l'enregistre dans le rapport
d'activation.
:SET
Attribue une valeur à une Variable de script.
:SET_SCRIPT_
VAR
Définit les valeurs des Variables de script par accès indirect.
Automation Engine
197
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.13 :RESTART
Instruction de script : Définit des points de reprise dans un objet activable.
Syntaxe
:RESTART Point de reprise [, Texte de reprise]
Elément de syntaxe
Description/format
Point de reprise
Désignation du point de reprise.
Format : Désignation du point de reprise sans guillemets
8 caractères max.
Texte de reprise
Description du point de reprise.
Format : littéral de script ou variable de script
24 caractères max.
Remarques
L'instruction :RESTART permet de définir des points de reprise dans un objet activable. Les points de
reprise vous permettent d'exécuter un objet activable à partir d'une étape spécifique. Pour ce faire, le point
de reprise souhaité doit être indiqué dans l'instruction Exécuter avec options.
198
Chapter 3 Organisation fonctionnelle
Dans le texte de reprise, décrivez le point de reprise qui s'affichera en tant qu'information supplémentaire
dans les protocoles d'exécution. L'indication d'un texte de reprise est facultative.
La manière dont est traitée le script lors de la reprise dépend de l'instruction :GENERATE ! Si vous
n'utilisez pas ce script, toutes les lignes de script sont traitées jusqu'à la première instruction :RESTART
ainsi que toutes les lignes qui se trouvent après le point de reprise indiqué.
Les fonctions de script SYS_LAST_RESTART_POINT et SYS_LAST_RESTART_TEXT permettent
de lire le dernier point de reprise exécuté, ainsi que le texte correspondant.
Exemple
L'exemple suivant définit un point de reprise intitulé "REORG" avec un texte de reprise.
:RESTART REORG, "Commencer la réorganisation"
Rubriques connexes :
:GENERATE
Contrôle la gestion des lignes de script pendant le traitement du
script.
RESTART_UC_OBJECT
Répète l'exécution d'une tâche.
SYS_ACT_RESTART
Détermine si l'objet a été activé en mode de reprise.
SYS_ACT_RESTART_ME_
NR
Indique le numéro courant (RunID) de l'objet activé en mode de
reprise.
SYS_LAST_RESTART_
POINT
Indique la désignation du point de reprise précédent dans le script.
SYS_LAST_RESTART_TEXT
Indique le texte du point de reprise précédent dans le script.
SYS_RESTART_POINT
Indique le point de reprise utilisé pour l'exécution de l'objet.
Scripts - Elaboration et traitement des scripts
Reprise d'objets activables
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.14 :RSET
Instruction de script : Attribue une valeur à une Variable de script et l'enregistre dans le rapport
d'activation.
Syntaxe
:RSETVariable de script [= Valeur]
Elément de syntaxe
Description/format
Variable de script
Nom de la Variable de script qui doit recevoir une valeur.
Format : Variable de script
Valeur
Valeur qui est attribuée à la Variable de script.
Format : littéral de script, nombre, Variable de script ou fonction de script
Automation Engine
199
Remarques
L'instruction de script enregistre simultanément la valeur attribuée à la Variable de script dans le rapport
d'activation. Lors de l'attribution de la valeur, la ligne suivante est alors écrite dans le protocole d'activation
:
AAAA-MM-JJ HH:MM:SS - La Variable U0020206 '&VAR#' a été enregistrée avec
la valeur "Valeur".
Il est possible de consigner des valeurs de Variables de script dans le rapport avec le script :RSET ainsi
qu'avec :READ.
La valeur enregistrée peut être utilisée de différentes manières.
D'une part, une reprise de l'affichage avec la valeur enregistrée est exécutée. L'attribution de valeur reliée
à l'instruction de script n'est pas exécutée dans les cas de reprise. Si cette Variable de script est
introuvable, l'activation est interrompue. Si la Variable de script a été enregistrée plusieurs fois, la dernière
valeur attribuée est prise sans avertissement.
D'autre part, l'instruction de script peut être aussi utilisée pour transmettre le contenu d'une Variable de
script pour les Jobs entre le Script et le Post-Script. Une valeur est attribuée à la Variable de script dans
l'onglet Script. L'instruction de script est réaffichée dans l'onglet Post-Script, mais sans attribution de
valeur. La Variable de script contient alors la valeur du script enregistré en dernier dans le rapport
d'activation.
Attention: lors de la sauvegarde de la valeur d'une Variable de script dans le rapport d'activation avec le
script :RSET, les types de données "signed" et "float" sont automatiquement convertis en "string". Si la
Variable est de type "unsigned", ce type de données est conservé.
Un :RSET dans le script des Workflows entraîne la génération d'un Objet variable qui est également
transmis aux Tâches de Workflows subordonnées (dans la mesure où l'héritage est activé dans les
Tâches enfant). Si le nom de cet objet variable se recoupe avec celui des tâches de Workflow, cela peut
provoquer une erreur lors de leur génération (voir : Variable de script - Syntaxe). Veillez donc à ce que les
noms de Variable se terminent toujours par un caractère spécial afin d'éviter des recoupements.
Exemple
Dans l'exemple, l'onglet Post-Script permet d'accéder à une Variable de script dont la valeur a été définie
dans l'onglet Script.
Onglet Script :
:RSET &TEXTE# = "test"
:SET &NOMBRE# = 1
:RSET &NOMBRE# = ADD(&NOMBRE#,1)
Onglet "Post traitement" :
:RSET &TEXTE#
:RSET &NOMBRE#
:PRINT &TEXTE#
:PRINT &NOMBRE#
Les valeurs "test" et "2" sont transmises à l'onglet "Post traitement" et écrites dans le protocole
d'activation.
200
Chapter 3 Organisation fonctionnelle
Rubriques connexes :
Elément de script
Description
:PSET
Attribue une valeur à une Variable d'objet.
:SET
Attribue une valeur à une Variable de script.
:SET_SCRIPT_VAR
Définit les valeurs des Variables de script par accès indirect.
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.15 :SET
Instruction de script : Attribue une valeur à une Variable de script.
Syntaxe
:S[ET]Variable de script = Valeur
Elément de syntaxe
Description/format
Variable de script
Nom de la Variable de script qui doit recevoir une valeur.
Format : Variable de script
Valeur
Valeur qui est attribuée à la Variable de script.
Format : littéral de script, Variable de script ou fonction script
Remarques
Attention aux spécificités d'utilisation des variables de script.
Si la Variable indiquée n'existe pas encore, elle est créée. Dans ce cas, la Variable ne possède qu'un type
de donnée spécifique.
Les termes arithmétiques peuvent également être résolus avec le script. Pour un complément
d'information, voir: Calcul.
Si des Variables prédéfinies sont indiquées en tant que valeur entre parenthèses ( ), les valeurs
numériques indiquent p.ex. &$CLIENT# ; ainsi elles sont automatiquement transformées selon le format
par défaut à 16 caractères.
Exemples
L'exemple illustre l'attribution d'un nom de fichier à la Variable de script "&FICHIER#".
:SET &FICHIER# = "L.LST.FICHIER"
Dans l'exemple, la Variable de script reçoit la date du jour actuelle retournée par une fonction de script.
:SET &AUJOURD'HUI# = SYS_DATE(AAMMJJ)
Bien sûr, une Variable de script peut aussi prendre en charge des chiffres.
:SET &NOMBRE# = 1
Automation Engine
201
On peut également attribuer une valeur à une autre Variable de script.
:SET &NR#= &NOMBRE#
Rubriques connexes :
Elément de script
Description
:DEFINE
Déclare une Variable de script avec un type spécifique de données.
:PSET
Attribue une valeur à une Variable d'objet.
:RSET
Attribue une valeur à une Variable de script et l'enregistre dans le rapport
d'activation.
:SET_SCRIPT_
VAR
Définit les valeurs des Variables de script par accès indirect.
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.16 :SET_SCRIPT_VAR
Instruction de script : Définit les valeurs des Variables de script par accès indirect.
Syntaxe
:SET_SCRIPT_VARVariable de Script = Valeur
Elément de syntaxe
Description/format
Variable de script
Caractères de remplacement pour le nom de la Variable de Script devant
recevoir des valeurs.
Format : Littéral de script ou Variable de script
Valeur
Valeur qui est attribuée à la Variable de script.
Format : littéral de Script, Variable de Script ou fonction de Script
Remarques
L'instruction de Script définit les valeurs de Variable de Script sans devoir indiquer explicitement le nom de
la Variable de Script. On peut accéder aux Variables de Script indirectement, par un caractère de
remplacement que l'on pourrait soi-même nommer Variable. Il est ainsi possible de définir aisément les
valeurs de nombreuses Variables de Script, dans une boucle de processus par exemple. L'instruction de
Script remplace par une ligne de Script unique les nombreuses instructions de conditions qui étaient
auparavant nécessaires.
Une chaîne de caractères, à partir de laquelle le nom d'une Variable de Script est créé, est transmise à
l'instruction de Script à l'aide d'une Variable de Script. La chaîne de caractères ne doit pas commencer par
"&", qui identifie une Variable de Script. Il faut au moins indiquer les premières lettres du nom de variable
(sans &) nécessaires pour identifier clairement la Variable de Script. L'instruction de Script crée un nom
valide pour la Variable de Script et lui attribue une valeur.
202
Chapter 3 Organisation fonctionnelle
Une erreur se produit lorsqu'il faut accéder à une Variable de Script qui n'existe pas.
Si la chaîne de caractères indiquée trouve le nom de plusieurs Variables de Script, aucune valeur n'est
attribuée. Vous devez donc choisir la chaîne de caractères de manière à ce que la Variable de Script
puisse être clairement identifiée.
L'instruction de Script ne peut être utilisée pour créer des Variables de Script. Il faut d'abord les créer avec
l'instruction :SET et leur donner une valeur initiale.
Lors de l'utilisation de l'élément de script, veillez à ce que les noms des variables de Script ne soient
pas sensibles à la casse. Ce qui signifie : Indiquez des caractères de remplacement (variable de
Script) qui se distinguent uniquement par la syntaxe ; l'accès sera ainsi toujours à la même variable de
Script.
Exemple
L'exemple se base sur un objet Variable et un Job. Les noms (Clé) et les valeurs (Valeur 1) des Variables
de Script sont enregistrés dans l'objet Variable.
Dans le Script du Job, le nom de la Variable de Script est ensuite lu dans une boucle de processus à partir
de la colonne Clé de l'objet Variable. Ensuite, la valeur de la Variable de Script est lue à partir de la 2e
colonne. Les valeurs transmises dans le Script sont ensuite attribuées aux Variables "&FIN#",
"&DEBUT#" et "&ULTIMO#".
:SET &FIN#
=""
:SET &START# = ""
:SET &ULTIMO# = ""
:SET &HANDLE# = PREP_PROCESS_VAR("SCRIPT_VARA")
:PROCESS &HANDLE#
:
SET &VARIABLE# = GET_PROCESS_LINE(&HANDLE#,1)
:
SET &VALEUR#
= GET_PROCESS_LINE(&HANDLE#,2)
:
SET_SCRIPT_VAR &VARIABLE#=&VALEUR#
:
PRINT "&VARIABLE# = &VALEUR#"
:ENDPROCESS
:CLOSE_PROCESS &HANDLE#
L'instruction PRINT permet d'imprimer les valeurs des objets Variable dans le protocole d'activation (Clé =
Valeur 1).
Extrait du rapport :
Automation Engine
203
2005-02-03 13:46:59 - U0020408 Fin = 20051027
2005-02-03 13:46:59 - U0020408 Début = 20051024
2005-02-03 13:46:59 - U0020408 Ultimo = 20051031
Rubriques connexes :
Elément de
script
Description
GET_SCRIPT_
VAR
Indique les valeurs des Variables de script par accès indirect.
:PSET
Attribue une valeur à une Variable d'objet.
:RSET
Attribue une valeur à une Variable de script et l'enregistre dans le rapport d'activation.
:SET
Attribue une valeur à une Variable de script. L'instruction peut être écrite sous forme
longue ou abrégée.
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.17 :WAIT
Instruction de script : Le traitement du script est interrompu pour une période donnée.
Syntaxe
:WAIT Durée
Elément de syntaxe
Description/format
Heure
Durée d'attente en secondes.
Format: Variable de script ou chiffre
Remarques
L'instruction de script permet d'interrompre le traitement du script pour une période définie dans durée.
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die UC4-Datenbank
geschrieben werden.
Exemple
L'élaboration du script est interrompue pendant 10 secondes.
:WAIT 10
Rubriques connexes :
204
Chapter 3 Organisation fonctionnelle
Elément de script
Description
:STOP
Interruption du traitement d'un script.
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.18 :WHILE... :ENDWHILE
Instructions de script : Définition d'une boucle permettant de répéter l'exécution de parties du script.
Syntaxe
:WHILECondition
[Instructions]
:ENDWHILE
Elément de syntaxe
Description/format
Condition
Une expression formulée au moyen d'un littéral de script, d'une variable de
script, d'une fonction de script, d'expressions numériques ou d'opérateurs, et
qui fournit un résultat "Vrai" ou "Faux".
Instructions
Une ou plusieurs instructions qui sont exécutées lorsque la condition a la
valeur "Vrai".
Format : Instruction de script
Remarques
L'instruction :WHILE est une structure de contrôle avec laquelle vous pouvez répéter des parties du Script
en fonction du résultat d'une condition. Il s'agit alors d'une expression logique.
Si la condition est remplie ("Vrai"), les instructions sont exécutées. La condition est ensuite à nouveau
évaluée et les instructions réexécutées lorsque le résultat est "Vrai". Cela se répète jusqu'à ce que la
condition ne soit plus remplie ("Faux"). Dans ce cas-là, le Script continue jusqu'à la prochaine ligne après
:ENDWHILE.
Attention : vérifiez qu'une condition d'interruption se produit pour ne pas créer une boucle sans fin.
Vous pouvez également emboîter des blocs WHILE, sans limitation de profondeur.
Une condition a la structure suivante :
ValeurOpérateur de comparaisonValeur de comparaison[OR Valeur de comparaison...]
Exemple :
:WHILE &DEPT# = "INFORMATIQUE" OR "UC4"
Jusqu'à 13 OU doivent exister dans la condition.
La formulation d'une condition contient l'un des opérateurs de comparaison suivants :
Opérateur Code Règle
Automation Engine
205
=
EQ
L'expression est "Vrai" lorsqu'au moins une valeur de comparaison correspond à la
valeur.
<>
NE
L'expression est "Vrai" lorsqu'aucune valeur de comparaison n'est égale à la
valeur.
<
>
<=
>=
LT
GT
LE
GE
L'expression est "Vrai" lorsqu'une valeur de comparaison remplit la clef indiquée.
Comme les Variables de script n'ont pas un type de données explicite et peuvent donc contenir aussi bien
des chiffres que des chaînes de caractères, il faut respecter les points suivants lors des comparaisons :
La comparaison est toujours numérique lorsque le contenu des valeurs de comparaison est numérique. Le
fait qu'une Variable soit indiquée avec ou sans apostrophes n'a donc aucune importance.
La condition suivante retourne "Vrai" :
:WHILE "0" = "0"
S'il n'y a aucune valeur numérique, la comparaison qui en résulte est alphanumérique.
La condition suivante retourne "Faux" :
:WHILE "0" = "abc"
La longueur des chaînes de caractères n'est pas vérifiée lors de la comparaison. La condition suivante
retourne "Vrai", car "M" précède "U" dans l'alphabet.
:WHILE "Henri" < "UC4"
Exemple
Dans l'exemple, le système demande un nom et un département à l'Utilisateur. Cette requête est répétée
jusqu'à ce que l'Utilisateur indique un nom autre que le sien.
:SET &REPETER# = "J"
:WHILE &REPETER# = "J"
:SET &DEPT# = SYS_USER_DEP()
:SET &NOM# = SYS_USER_NAME()
:BEGINREAD
: READ &DEPT#,"08","Veuillez indiquer le département", &DEPT#, "M"
: READ &NOM#,"08","Veuillez indiquer le nom", &NOM#, "M"
: ENDREAD
:IF SYS_LAST_ERR_NR() <> 0
: STOP
:ELSE
: IF SYS_USER_NAME() = &NOM#
: SET &REPETER#= "Y"
: SET_LAST_ERR 10006, "Le nom ne peut pas être le vôtre"
:ELSE
: SET &REPETER#= "N"
: ENDIF
: ENDIF
:ENDWHILE
Rubriques connexes :
206
Chapter 3 Organisation fonctionnelle
Elément de script
Description
:IF... :ELSE... :ENDIF
Analyser et exécuter une expression suivant les instructions du résultat
d'évaluation.
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.19 FIND
Fonction script : Recherche un Tableau de script et retourne l'Index correspondant.
Syntaxe
FIND(Tableau de Script, Terme de recherche[, Position de départ])
Elément de syntaxe
Description/format
Tableau de script
Nom du Tableau de Script dans lequel effectuer la recherche.
Format : Variable de script
Terme de recherche
Chaîne de caractères ou nombre sur lesquels porte la recherche.
Format : Format : littéral de chaîne, nombre sans guillemets, Variable de
Script
Position de départ
Index à partir duquel la recherche doit commencer.
Format : Format : nombre sans guillemets, Variable de Script
Codes retour
Index du tableau dans lequel le terme de recherche a été trouvé.
0 = Aucun résultat de recherche
Remarques
La recherche de terme de recherche est réalisée pour toutes les valeurs de tableau de Script à partir de
l'index position de départ. Si aucune position de départ n'est indiquée, la recherche s'effectue sur
l'ensemble du tableau (à partir de l'index 1). Si la recherche a réussi, l'index de tableau dans lequel le texte
ou le nombre a été trouvé en premier est retourné. Pour poursuivre la recherche dans le reste du tableau, il
faut utiliser l'index suivant du résultat précédent comme position de départ. Si la recherche ne donne
aucun résultat, le code retour de la fonction script est 0.
Le tableau de Script doit être indiqué avec des crochets vides [].
Les tableaux de Script doivent être créés avec :DEFINE, qui permet aussi de déterminer le type de
données et la taille. Les champs du tableau auxquels aucune valeur spécifique n'a encore été attribuée
possèdent la valeur par défaut "" (type de données : chaîne) ou 0 (types de données numériques). La
recherche avec FIND n'est donc judicieuse que lorsque le tableau a aussi été rempli en conséquence. Les
éléments de tableau peuvent être définis individuellement en saisissant l'index :SET. L'instruction de
Script :FILL permet d'enregistrer plusieurs valeurs différentes simultanément dans un tableau.
Automation Engine
207
Exemples
L'exemple montre la création et l'initialisation d'un tableau avec les valeurs issues d'un objet Variable.
Ensuite, une recherche sur WIN s'effectue dans tout le tableau et tous les résultats s'inscrivent dans le
protocole d'activation.
:DEFINE&array#, string, 5
:FILL&array#[] = GET_VAR(VARA.WIN, AGENTS)
:SET&search# = FIND(&array#[], "WIN", 1)
:WHILE&search# <> 0
:PRINT"WIN trouvé à la position : &search#"
:SET&search# = &search# + 1
:SET &search# = FIND(&array#[], "WIN",&search#)
:ENDWHILE
Rubriques connexes :
Elément de script
Description
:FILL
Enregistre plusieurs valeurs dans un Tableau de script.
LENGTH
Détermine la longueur d'un Tableau de script.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.20 GET_SCRIPT_VAR
Fonction script : Indique les valeurs des Variables de script par accès indirect.
Syntaxe
GET_SCRIPT_VAR(Variable de Script)
Elément de syntaxe
Description/format
Variable de script
Caractère de remplacement pour les noms des Variables de Script dont les
valeurs doivent être lues.
Format : nom UC4, littéral de Script ou Variable de Script
Remarques
La fonction de Script lit les valeurs des Variables de Script sans que les noms de ces dernières ne doivent
être clairement indiqués. On peut accéder aux Variables de Script indirectement, par un caractère de
remplacement que l'on pourrait soi-même nommer Variable. Cela permet de demander les valeurs de
plusieurs Variables de Script en toute simplicité, dans une boucle de processus, par exemple. La fonction
de Script remplace donc plusieurs instructions de conditions jusqu'à présent nécessaires par une seule
ligne de Script.
Une chaîne de caractères, à partir de laquelle le nom d'une Variable de Script est créé, est transmise à la
fonction de Script à l'aide d'une Variable de Script. Il n'est donc pas nécessaire de commencer la chaîne
de caractères par le signe "&", qui signale une Variable de Script. Il faut au moins indiquer les premières
208
Chapter 3 Organisation fonctionnelle
lettres du nom de variable nécessaires pour identifier clairement la Variable de Script. Si l'indication n'est
pas claire, la valeur de la première variable correspondante sera lue.
Le nom de variable est recherché à partir de & ou du caractère suivant. Si la chaîne de caractères indiquée
ne correspond au début d'aucun nom de Variable, une erreur se produit.
Le Script permet également de déterminer les valeurs des Variables Objet et PromptSet.
Exemple
L'exemple se base sur un objet Variable et un Job. Les noms des Variables de Script sont enregistrés dans
l'objet Variable.
Dans le Script du Job, le nom de la Variable de Script est ensuite lu dans une boucle de processus à partir
de l'objet Variable. Celui-ci est transmis à la Variable "&VALEUR#". Le nom de la Variable de Script et sa
valeur sont affichés dans le rapport d'activation. Cette valeur peut apparaître dans une instruction PRINT
à l'aide de la Variable de Script "&VALEUR#" qui contient successivement le contenu de "&FIN#",
"&START#" et "&ULTIMO#".
:SET &FIN#
="20051027"
:SET &START# ="20051024"
:SET &ULTIMO# = "20051031"
:SET &HANDLE# = PREP_PROCESS_VAR("SCRIPT_VARA")
:PROCESS &HANDLE#
:
SET &VARIABLE# = GET_PROCESS_LINE(&HANDLE#,1)
:
SET &VALEUR# = GET_SCRIPT_VAR(&VARIABLE#)
:
PRINT "&VARIABLE# = &VALEUR#"
:ENDPROCESS
:CLOSE_PROCESS &HANDLE#
Extrait du rapport :
2005-02-03 12:51:23 - U0020408 Fin = 20051027
2005-02-03 12:51:23 - U0020408 Début = 20051024
2005-02-03 12:51:23 - U0020408 Ultimo = 20051031
Rubriques connexes :
Elément de script
Description
Automation Engine
:SET_SCRIPT_
VAR
Définit les valeurs des Variables de script par accès indirect.
:RSET
Attribue une valeur à une Variable de script et l'enregistre dans le rapport
d'activation.
209
Scripts - Elaboration et traitement des scripts
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.5.21 LENGTH
Fonction script : Détermine la longueur d'un Tableau de script.
Syntaxe
LENGTH(Tableau de Scrip[, SIZE])
Elément de syntaxe
Description/format
Tableau de script
Nom de la Variable de script qui a été déclarée comme tableau.
Format : Variable de script
SIZE
Ignorer les éléments vides à la fin du tableau
Codes retour
Nombre d'éléments du tableau de script.
Remarques
Les tableaux de script doivent être créés avec l'élément de script :DEFINE. Le type de données et le
nombre d'éléments y sont aussi déterminés. La taille du tableau peut ensuite être déterminée avec la
fonction script LENGTH. Le tableau doit être indiqué avec des crochets vides.
La taille maximale des tableaux de script est 99999.
Si le tableau indiqué est introuvable ou qu'une Variable de script a été indiquée, une erreur de script se
produit.
Lorsque le paramètre SIZE est également spécifié, seul le nombre jusqu'au dernier élément de tableau
complété est retourné. Tous les éléments vides à la fin du tableau ne sont donc pas pris en compte.
Veuillez noter que la détermination de la taille jusqu'au dernier élément complété (paramètre SIZE) est
possible uniquement lorsque le tableau présente le type de données "string". Pour tous les autres types
de données, la taille complète du tableau est toujours retournée !
Exemples
Dans l'exemple suivant, un tableau de script est créé, complété avec des valeurs issues d'un objet
Variable, puis les valeurs s'affichent à l'aide d'une boucle.
:DEFINE&ARRAY#, string, 5
:SET&LEN# = LENGTH(&ARRAY#[])
:SET&VAR# = 1
210
Chapter 3 Organisation fonctionnelle
:FILL&ARRAY#[] = GET_VAR(VARA1, ARRAY)
:WHILE&VAR# LE &LEN#
:PRINT"Element &VAR# = &ARRAY#[&VAR#]"
:SET&VAR# = &VAR# + 1
:ENDWHILE
Rubriques connexes :
Elément de script
Description
:FILL
Enregistre plusieurs valeurs dans un Tableau de script.
FIND
Recherche un Tableau de script et retourne l'Index correspondant.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.6 Traitement des erreurs et messages
3.6.1 :EXIT
Instruction de script : Instruction permettant de terminer le traitement du script avec un code retour.
Syntaxe
:EXIT [Code retour]
Elément de syntaxe
Description/format
Code retour
Valeur qui doit être définie comme code retour.
Format : chiffre, variable de script ou fonction de script
Valeur par défaut : "0"
Remarques
L'instruction de script permet de terminer le traitement du script avec un code retour correspondant. Cette
instruction est utilisée pour réagir aux conditions qui entraînent l'interruption de la Tâche. Par exemple, le
contenu d'une Variable dans un objet script peut ainsi être vérifié et en fonction du résultat, la Tâche peut
être poursuivie ou interrompue.
Si l'instruction de script est utilisée sans code retour ou avec la valeur "0", le traitement du script se
termine normalement à cet emplacement avec le code retour "0". La Tâche se poursuit tout de même : les
Jobs sont initiés à partir du JCL généré, les Alertes sont affichées, etc.
Des codes retour Utilisateurs peuvent également être indiqués en tant que codes retour. Le traitement de
script est interrompu et la Tâche terminée anormalement (ENDED_NOT_OK). Si la génération à
l'exécution est activée dans l'onglet Attributs de la Tâche, cela permet également de réagir à ce code
retour Utilisateur au sein d'un Workflow.
:EXIT termine le traitement du script. C'est pourquoi l'instruction ne peut pas être utilisée dans les
onglets Post-Script. Dans ces cas, utilisez l'instruction :MODIFY_STATE.
Automation Engine
Exemple
Le premier exemple termine le traitement de script avec le code retour 10.
:EXIT 10
Rubriques connexes :
:MODIFY_STATE
Modifie le code retour ou le texte du statut d'un Job une fois ce dernier terminé.
:STOP
Interrompt l'activation d'un script.
Elément de script - Traitement des erreurs et messages
Codes retour système des objets activables
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.6.2 :ON_ERROR
Instruction de script : Détermine les réactions associées à certaines erreurs ou certains messages de
script.
Syntaxe
:ON_ERROR Réaction
Elément de syntaxe
Description/format
Réaction
Mot-clé pour la réaction aux erreurs et aux messages.
Format : Nom UC4, Littéral de script ou Variable de script
Valeurs autorisées : "ABEND", "RESUME" (Par défaut)
"ABEND" - Le traitement du Script est interrompu
"RESUME" - Le traitement du Script recommence.
Remarques
L'instruction de Script détermine les fonctions de Script suivantes :
ACTIVATE_UC_OBJECT
LAST_OF_PERIOD
AUTOFORECAST
MODIFY_OBJECT
CANCEL_UC_OBJECT
MOVE_OBJECT
CHANGE_LOGGING
PREP_PROCESS_FILENAME
CREATE_OBJECT
REMOVE_OBJECT
EXPORT
RESTART_UC_OBJECT
FIRST_OF_PERIOD
SEND_MAIL
GET_FILESYSTEM
SEND_MSG
211
212
Chapter 3 Organisation fonctionnelle
GET_OBJECT_TYPE
SYS_SERVER_ALIVE
GET_STATISTIC_DETAIL
SYS_USER_ALIVE
IMPORT
UC4 travaille par défaut pour que le traitement de Script pour ces fonctions de Script ne soit pas
interrompu lorsque certaines erreurs se produisent. Vous pouvez analyser l'erreur émise avec les
fonctions de Script pour le traitement des erreurs.
Le paramètre "ABEND" vous permet de forcer le Script à s'interrompre en cas d'erreur. Par contre,
"RESUME" vous permet de continuer le Script et de lire les codes retour des fonctions répertoriées
précédemment.
Exemple
L'exemple permet de définir la non-interruption du Script en cas d'erreur. Il cherche ensuite à vérifier la
capacité d'enregistrement d'un lecteur non existant. Vous pouvez alors analyser l'erreur avec les fonctions
de Script pour le traitement des erreurs.
:ON_ERROR RESUME
:SET &CHECK# = GET_FILESYSTEM('WIN21', 'Z:\', FILESYSTEM_SPACE_TOTAL)
:SET &ERRNR# = SYS_LAST_ERR_NR
:SET&ERRINS# = SYS_LAST_ERR_INS
:SET&MESSAGE# = GET_MSG_TXT (&NUMERR#,&ERRINS#)
Rubriques connexes :
Elément de script - Traitement des erreurs et messages
Exemples
Détermination du message d'erreur et du numéro de l'erreur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.6.3 :SEND_MSG
Instruction de script : Envoie des messages à des Utilisateurs connectés à l'Interface Utilisateur.
Syntaxe
:SEND_MSG Nom, Département, Message
Elément de syntaxe
Description/format
Nom
Nom de l'Utilisateur devant recevoir le message.
Format : littéral de script, Variable de script ou fonction de script
Les caractères génériques "*" et "?" sont autorisés. "*" signifie n'importe
quelle chaîne de caractères et "?" exactement un caractère.
Automation Engine
Département
213
Département de l'Utilisateur devant recevoir le message.
Format : littéral de script, Variable de script ou fonction de script
Les caractères génériques "*" et "?" sont autorisés. "*" signifie n'importe
quelle chaîne de caractères et "?" exactement un caractère.
Message
Message devant être envoyé.
Format : littéral de script, Variable de script ou fonction de script
Remarques
Cette instruction de Script permet d'envoyer des messages aux Utilisateurs. Ceux-ci s'affichent dans la
fenêtre des messages correspondante.
Le message n'étant envoyé qu'aux Utilisateurs connectés à l'Interface Utilisateur, il est recommandé
d'utiliser le Script SYS_USER_ALIVE, qui permet de vérifier cette condition.
Si l'Utilisateur n'existe pas, l'erreur "20698" se produit. L'instruction de Script :ON_ERROR permet de
définir la réaction dans ce cas. Comme indiqué auparavant, vous pouvez l'analyser avec les fonctions de
script pour le traitement des erreurs. Le traitement du script se poursuit. Toutefois, vous avez également la
possibilité de l'interrompre.
Les messages envoyés sont consignés ensemble et se trouvent dans la catégorie Messages du panneau
de configuration. Le type de message est "Information" et la catégorie de message s'appelle "Message".
Attention : les messages envoyés ne sont affichés que lorsque l'option "Afficher seulement les
messages d'erreur et d'avertissement" de l'Interface Utilisateur n'est pas activée.
Le privilège "Voir tous les messages de ce Client" permet également d'afficher les messages envoyés
à d'autres Utilisateurs.
Exemples
L'Utilisateur connecté sous le nom "PHILIBERT" et dans le Département "INFORMATIQUE" de
l'Interface Utilisateur reçoit une demande expresse de sauvegarde. Si l'Utilisateur n'est pas connecté à
l'Interface Utilisateur, un objet Alerte est initié.
:SET &RET# = SYS_USER_ALIVE("HENRI","INFORMATIQUE")
:IF &RET# = "Y"
: SEND_MSG "PHILIBERT","INFORMATIQUE","Veuillez lancer la sauvegarde !"
:ELSE
: SET &ACTOBJ# = ACTIVATE_UC_OBJECT(CALL,"EQUIPE DE JOUR")
:ENDIF
L'Utilisateur reçoit une Alerte identique. L'Utilisateur reçoit le même message Pour ce faire, on utilise une
fonction de Script pour le département et une Variable de Script pour le message.
:SET &MSG# = "Veuillez lancer la sauvegarde !"
:SEND_MSG "PHILIBERT",SYS_USER_DEP(),&MSG#
214
Chapter 3 Organisation fonctionnelle
Cet exemple utilise des caractères génériques pour envoyer le message à tous les Utilisateurs du
département "INFORMATIQUE".
:SEND_MSG "*","INFORMATIQUE","Veuillez lancer la sauvegarde !"
Rubriques connexes :
Elément de script
Description
SYS_USER_ALIVE
Vérifie si l'Utilisateur est connecté à UC4 par une Interface Utilisateur.
SEND_MAIL
Envoie un e-mail à un Utilisateur.
Elément de script - Traitement des erreurs et messages
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.6.4 :SEND_SNMP_TRAP
Instruction de script : Envoie une interruption SNMP.
Syntaxe
:SEND_SNMP_TRAPCode d'interruption, Paramètre[, Paramètre[, Paramètre]]...
Elément de syntaxe
Description/format
Code d'interruption
Code définissable librement auquel une gestion SNMP peut réagir.
Format : nombre, Variable de script ou fonction de script
Paramètres
Informations supplémentaires qui peuvent être envoyées avec l'interruption
SNMP.
Format : nombre, littéral de script, Variable de script ou fonction de script
Le numéro de Client doit être indiqué entre guillemets (ex. : "1000").
Remarques
L'instruction de script envoie une interruption SNMP avec les paramètres indiqués à un système de
gestion. Elle ne peut être utilisée qu'une fois tous les prérequis remplis pour la fonctionnalité SNMP.
10 paramètres maximum peuvent être joints. Ils peuvent être 5 chaînes de caractères maximum et
5 chiffres maximum. La position des chaînes de caractères et des nombres est exactement prescrite.
D'abord viennent les chaînes de caractères, suivies des nombres. Au moins une chaîne de caractères doit
être indiquée.
Les codes d'interruption générés par UC4 et HP OpenView Integrator (codes d'interruption: 10000 10010) ne doivent pas être utilisés.
Automation Engine
215
Exemples
Le premier exemple montre un test simple. L'interruption SNMP 50000 envoie tous les paramètres
possibles à un système de gestion.
:SEND_SNMP_TRAP
50000,"Texte1","TEXTE2","TEXTE3","TEXTE4","TEXTE5",1,2,3,4,5
Dans le deuxième exemple, chaque date d'activation est ensuite transmise. Différentes interruptions sont
envoyées selon qu'il s'agit d'une activation directe ou d'une activation dans un Workflow. Les deux
interruptions se composent d'un code d'interruption et d'une chaîne de caractères formatée.
:SET &NOM# =SYS_ACT_ME_NAME()
:SET &ID#
=SYS_ACT_ME_NR()
:SET &JPNOM#
=SYS_ACT_PARENT_NAME()
:SET &CLIENT#
=SYS_ACT_CLIENT()
!Type d'interruption = alarme
:SET &TYPE#
= 4
!Degré d'importance de l'Evènement
:SET &SEV#
= 4
:IF "&JPNOM#" = ""
:
SEND_SNMP_TRAP 50001, "&CLIENT#","Erreur dans la Tâche &NOM#
(&ID#)!",,,,&TYPE#,&SEV#
:ELSE
:
SET &JPID# = SYS_ACT_PARENT_NR()
:
SEND_SNMP_TRAP 50002, "&CLIENT#","Erreur dans le Workflow &JPNAME#
(&JPID#) pour la Tâche &NAME# (&ID#) !",,,,&TYPE#,&SEV#
:ENDIF
Le troisième exemple montre comment les dates d'activation transmises sont passées à l'instruction de
script en tant que paramètres uniques. Les dates d'activation sont ainsi disponibles dans le système de
gestion en tant que valeurs uniques et peuvent ensuite y être traitées plus facilement.
:SET &NOM#
=SYS_ACT_ME_NAME()
:SET &ID#
=SYS_ACT_ME_NR()
:SET &JPNOM#
=SYS_ACT_PARENT_NAME()
:SET &CLIENT#
=SYS_ACT_CLIENT()
!Type d'interruption = alarme
:SET &TYPE#
= 4
!Degré d'importance de l'Evènement
:SET &SEV#
= 4
:IF
&JPNOM# = ""
:
SEND_SNMP_TRAP 50001,"&CLIENT#","&NOM#",,"Erreur dans la
Tâche!",,&TYPE#,&SEV#,&ID#
:ELSE
:
SET &JPID = SYS_ACT_PARENT_NR()
:
SEND_SNMP_TRAP 50002,"&CLIENT#","&NAME#","&JPNAME#","Erreur dans le
Workflow !",,&TYPE#,&SEV#,&ID#,&JPID#
:ENDIF
Si &ID# et/ou &JPID# sont envoyés en tant que chiffres et non en tant que chaînes de caractères, ils
peuvent être transmis uniquement à partir du sixième paramètre. Des virgules doivent remplacer les
paramètres omis qui sont prévus pour des chaînes de caractères.
Rubriques connexes :
216
Chapter 3 Organisation fonctionnelle
Elément de
script
Description
SYS_SNMP_
ACTIVE
Vérification de l'activation de la connexion SNMP (Simple Network Management
Protocol) d'UC4.
Elément de script - Traitement des erreurs et messages
UC4 et SNMP
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.6.5 :SET_LAST_ERR
Instruction de script : Définit le numéro et le texte de l'erreur
Syntaxe
:SET_LAST_ERR Numéro[, Insert]
Elément de syntaxe
Description/format
Numéro
Numéro d'erreur.
Format : nombre, Variable de script ou fonction de script
Insert
Texte de l'erreur, partie variable du message d'erreur.
Format : littéral de Script, Variable de Script ou fonction de Script
Remarques
L'instruction de Script :SET_LAST_ERR définit le numéro et le texte de l'erreur. Dans ce cas, l'instruction
remplace le numéro de l'erreur et/ou la partie variable du dernier message d'erreur. L'indication d'Insert est
facultative. Si Insert n'est pas indiqué, la partie variable du message d'erreur est une chaîne vide.
Veillez à indiquer un message d'erreur valide. Vous trouverez la liste de tous les messages disponibles,
avec leur texte, dans le manuel des messages.
Si le message possède plusieurs parties variables, il faut les séparer par un "|". On trouve également
l'ordre d'exécution dans le manuel des messages.
:SET_LAST_ERR 0 permet de supprimer le numéro et le texte d'erreur.
Vous pouvez obtenir tout le message d'erreur modifié avec GET_MSG_TXT.
Exemple
L'exemple définit le numéro d'erreur "20657" avec les deux parties variables du message.
:SET_LAST_ERR 20657,"MAWI.TAG|20||OBJETS"
:SET &ERRINS# = SYS_LAST_ERR_INS()
:SET &ERRNR# = SYS_LAST_ERR_NR()
:SET &MSG# = GET_MSG_TXT(&ERRNR#, &ERRINS#)
:PRINT &MSG#
Automation Engine
217
Extrait du manuel de messages : 20657 : erreur de durée d'exécution dans l'objet '&01' ligne '&02' : dossier
cible '&04' introuvable.
Texte du résultat de l'instruction de Script :
U0020657 : erreur de durée d'exécution dans l'objet 'GS.JOUR' ligne '20' :
dossier cible 'OBJETS' introuvable.
Rubriques connexes :
Elément de script
Description
SYS_LAST_ERR_INS
Indique la partie variable du message d'erreur pour la dernière erreur
survenue.
SYS_LAST_ERR_NR
Renvoie le numéro d'erreur de la dernière erreur survenue.
SYS_LAST_ERR_
SYSTXT
Détermine le texte d'erreur du système d'exploitation pour la dernière erreur
survenue
Elément de script - Traitement des erreurs et messages
Généralités sur les Scripts
Script - Liste alphabétique
Script - Division fonctionnelle
3.6.6 :STOP
Instruction de script : Interrompt l'activation d'un script.
Syntaxe
:STOP [Mode Arrêt]
Elément de syntaxe
Description/format
Mode d'arrêt
Les expressions suivantes peuvent être passées à l'instruction :STOP en
tant que mode d'arrêt :
Aucune indication
Interrompt le traitement d'un script et affiche le protocole d'activation avec le
message U0010014.
NOMSG, numéro du message[, texte du message]
Termine l'activation de l'objet sans erreur. Un message peut être créé.
MSG, Numéro d'erreur, Texte d'erreur
Interrompt l'activation d'un objet avec un message d'erreur.
Remarques
:STOP interrompt l'activation d'un objet. C'est pourquoi l'instruction ne peut pas être utilisée dans les
onglets Post-Script. Dans ces cas, utilisez l'instruction :MODIFY_STATE.
Mode d'arrêt NOMSG
218
Chapter 3 Organisation fonctionnelle
On peut utiliser l'instruction :STOP avec le mode d'arrêt NOMSG dans des objets qui ne nécessitent pas
l'exécution par un Agent. Cela permet de travailler exclusivement avec des scripts et aussi, par exemple,
de définir des Variables UC4.
En outre, un message peut être créé dans le mode d'arrêt NOMSG. Le numéro de message est nécessaire
pour la syntaxe mais n'est pas évalué. Le texte du message est enregistré dans les statistiques et envoyé
en tant qu'élément de confirmation lors de l'exécution via CallAPI. Vous pouvez ainsi par exemple
retourner au CallAPI le numéro courant (RunID) d'une Tâche démarrée.
Comme le mode d'arrêt NOMSG termine l'activation d'une Tâche sans erreur, cette dernière n'est pas
affichée en tant que Tâche interrompue dans les statistiques.
Mode d'arrêt MSG
Vous pouvez utiliser le mode d'arrêt MSG pour interrompre l'activation d'un objet avec un message
d'erreur. Vous pouvez alors indiquer un numéro d'erreur et un texte d'erreur. Cela est particulièrement
important pour les objets qui sont démarrés via le CallAPI de UC4. Les informations ainsi retournées
représentent la seule possibilité de connaître le contenu de l'exécution du script. Les numéros d'erreur 50 à
59 sont réservés à l'Utilisateur.
Le numéro d'erreur 50 provoque le code retour 4 et les numéros d'erreur 51 à 59 ferment l'utilitaire avec
le code retour 8.
Attention seuls les numéros d'erreur 50 à 59 peuvent être utilisés ! Les autres numéros d'erreur
entraînent l'interruption du script, avec un message signalant que le numéro d'erreur indiqué n'est pas
valide.
Comme le mode d'arrêt MSG termine l'activation d'une Tâche avec erreur, cette dernière est affichée en
tant que Tâche interrompue dans les statistiques (FAULT_OTHER : démarrage impossible).
Si l'instruction :STOP est utilisée sans paramètre ou avec le mode d'arrêt MSG, le traitement du script
s'interrompt avec une erreur. Un rollback de la base de données est alors effectué. Toutes les transactions
non encore exécutées sont annulées. Si vous avez fourni des objets Variable dans le script, il est alors
possible que les objets Variables existant au début du script aient déjà sauvegardé leurs nouvelles
valeurs, qui ne sont cependant pas fournies à la fin du script.
Le système inscrit les transactions dans la base de données UC4 (Commit) lorsque le traitement du script
est interrompu. Ce moment survient
l
l
l
automatiquement à intervalles de 5 secondes,
via des scripts tels que ACTIVATE_UC_OBJECT, GET_FILESYSTEM, :READ, PREP_
PROCESS, PREP_PROCESS_FILE,
et par l'instruction de script :WAIT.
L'instruction :WAIT 0 permet de forcer une interruption du traitement du script et donc une inscription
(Commit) dans la base de données.
Exemple
L'exemple illustre le message d'erreur lié à l'activation correcte ou incorrecte d'un Job.
:SET&AKTNR# = ACTIVATE_UC_OBJECT(JOBS, GS)
:IF&AKTNR# = "0"
: STOP MSG, 50, "Erreur lors de l'activation du Job MAWI."
:SINON
: PRINT"Le Job a été démarré avec le numéro d'activation &AKTNR#."
:ENDIF
Automation Engine
219
Rubriques connexes :
Elément de script
Description
:EXIT
Instruction permettant de terminer le traitement du script avec un code retour.
:WAIT
Le traitement du script est interrompu pour une période donnée.
Script - Activer les objets
Traitement des erreurs et messages
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.6.7 GET_MSG_TXT
Fonction script : Détermine le texte du message de la dernière erreur survenue.
Syntaxe
GET_MSG_TXT(Numéro[, Insert])
Elément de syntaxe
Description/format
Numéro
Numéro d'erreur
Format : Variable de script ou chiffre
Le numéro d'erreur est également renvoyé par la fonction de Script SYS_
LAST_ERR_NR.
Insert
Partie Variable du message d'erreur
Format : littéral de script ou Variable de script
La partie Variable du message d'erreur est également renvoyée par la fonction
de Script SYS_LAST_ERR_INS.
Codes retour
Texte du message de la dernière erreur survenue.
" " - aucune erreur n'est survenue.
Remarques
Pour chaque Script sélectionné, l'utilisation de :ON_ERROR permet de poursuivre le Script malgré des
erreurs. Dans ce cas, le message d'erreur peut être déterminé par la fonction.
Le texte du message est déterminé sur la base du numéro et de la partie Variable du message d'erreur
Insert. Auparavant, le numéro d'erreur peut être déterminé avec SYS_LAST_ERR_NR, et la partie
Variable du message d'erreur peut être déterminée avec SYS_LAST_ERR_INS. La fonction de Script
GET_MSG_TXT forme le message d'erreur UC4 complet avec ces données et avec les textes d'erreur
constants.
Le paramètre Insert ne doit pas être indiqué, lorsque le texte du message ne comporte aucune partie
Variable. C'est notamment le cas des Textes de statut dont vous pouvez lire le numéro à l'aide de la
fonction GET_STATISTIC_DETAIL.
220
Chapter 3 Organisation fonctionnelle
Exemple
L'exemple cherche à vérifier la capacité d'enregistrement d'un lecteur non disponible. Dans ce cas, une
erreur se produit. Le numéro d'erreur et la partie Variable du message d'erreur sont lus. Ces informations
permettent de déterminer le message d'erreur UC4 complet et de l'envoyer sous forme de message à
l'Utilisateur.
:SET &CHECK# = GET_FILESYSTEM("WIN21", "Z:\", FILESYSTEM_SPACE_TOTAL)
:SET &NUMERR# = SYS_LAST_ERR_NR()
:SET &ERRINS# = SYS_LAST_ERR_INS()
:SET &MESSAGE# = GET_MSG_TXT(&NUMERR#,&ERRINS#)
:SEND_MSGBU,BU,&MESSAGE#
Dans le deuxième exemple, le texte du statut d'une Tâche est déterminé.
:SET &STATUT# = GET_STATISTIC_DETAIL(&RUNID#, STATUS)
:SET &TEXTE# = GET_MSG_TXT(&STATUT#)
:PRINT &TEXTE#
Le résultat pourrait ressembler à ce qui suit :
ENDED_CANCEL - Arrêt forcé
Rubriques connexes :
Elément de script
Description
GET_MSG_TYPE
Indique le type d'un numéro de message.
SYS_LAST_ERR_INS Indique la partie variable du message d'erreur pour la dernière erreur survenue.
SYS_LAST_ERR_NR
Renvoie le numéro d'erreur de la dernière erreur survenue.
Elément de script - Traitement des erreurs et messages
Exemples
Détermination du message d'erreur et du numéro de l'erreur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.6.8 GET_MSG_TYPE
Fonction script : Indique le type d'un numéro de message.
Syntaxe
GET_MSG_TYPE(numéro de message)
Elément de syntaxe
Description/format
Numéro de message
Numéro d'un message dont le type doit être lu.
Format : Variable de script ou chiffre
Codes retour
Automation Engine
221
"A" : interruption
"E" : erreur
"I" : information
"Q" : question
"W" : avertissement
" " : le numéro d'erreur n'existe pas.
Remarques
Les numéros d'erreur sont répartis en différents types tels que les avertissements et les messages
d'erreur.
La fonction script SYS_LAST_ERR_NR permet d'obtenir le numéro du dernier message survenu.
Exemple
Dans l'exemple suivant, l'administrateur UC4 est informé en cas de message d'erreur ou d'interruption.
:SET &ERRNR# = SYS_LAST_ERR_NR()
:SET &ERRTYP# = GET_MSG_TYPE(&ERRNR#)
:IF &ERRTYP# = "A" OR "E"
: SET &ERRINS# =SYS_LAST_ERR_INS()
: SET &MESSAGE# = GET_MSG_TXT(&NUMERR#,&ERRINS#)
: PRINT &MESSAGE#
: SET &RET# = SEND_MAIL("[email protected]",,"Erreur en cours de
traitement",&MESSAGE#)
:ENDIF
Rubriques connexes :
Elément de script
Description
GET_MSG_TXT
Détermine le texte du message de la dernière erreur survenue.
SYS_LAST_ERR_INS Indique la partie variable du message d'erreur pour la dernière erreur survenue.
SYS_LAST_ERR_NR
Renvoie le numéro d'erreur de la dernière erreur survenue.
Elément de script - Traitement des erreurs et messages
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.6.9 SEND_MAIL
Fonction script : Envoie un e-mail à un Utilisateur.
Syntaxe
SEND_MAIL(destinataire, [Cc], sujet, texte[, pièce jointe])
Elément de syntaxe
Description/format
222
Chapter 3 Organisation fonctionnelle
Destinataire
Destinataire du message.
Format : Littéral de script ou Variable de script
Si l'e-mail doit être envoyé à plusieurs destinataires, les adresses doivent être
séparées par des points-virgules.
Cc
Destinataires devant recevoir une copie de ce message.
Format : littéral de script ou Variable de script
Valeur par défaut : ""
Objet
Courte description du message.
Format : Littéral de script ou Variable de script
Texte
Texte du message.
Format : Littéral de script ou Variable de script
Pièce jointe
Chemin et nom des fichiers devant être envoyés en pièce jointe.
Format : littéral de script ou Variable de script
Valeur par défaut : ""
Séparez chaque chemin par un point-virgule (;) lorsque vous souhaitez
envoyer plusieurs fichiers.
Codes retour
"0" : l'e-mail a été correctement envoyé.
"10034" : aucun hôte avec connexion e-mail n'est actif.
"50006" : le serveur SMTP répond avec un code d'erreur.
"50014" : la pièce jointe n'existe pas.
"50027" : l'authentification sur le serveur STMP a échoué.
"50028" : l'adresse du destinataire n'est pas valide et a été par conséquent refusée par le serveur
SMTP.
"50029" : connexion au serveur SMTP impossible.
"50030" : erreur lors de la création du socket.
"50031" : les informations hôte du serveur SMTP n'ont pas pu être déterminées.
"50032" : la communication avec le serveur SMTP n'est plus possible.
"50033" : aucune donnée ne peut être reçue par le serveur SMTP.
"50034" : aucune donnée ne peut être envoyée au serveur SMTP.
"50035" : initialisation des Windows Sockets impossible.
"50036" : le nom d'hôte de l'ordinateur local ne peut pas être déterminé.
Remarques
L'envoi d'un e-mail dépend des possibilités proposées par la configuration du PC d'un Utilisateur.
La fonction de script ne vérifie pas si le destinataire indiqué existe réellement. Le message est également
envoyé à un mauvais destinataire.
Si l'e-mail ne peut pas être envoyé, car par exemple la pièce jointe est introuvable ou la connexion e-mail
n'est pas active, le script continue à s'exécuter. Dans ce cas, la fonction de script fournit un code Retour
correspondant.
L'instruction de script :ON_ERROR vous permet d'interrompre le traitement du script en cas d'erreur.
Vous pouvez analyser l'erreur avec les fonctions de script pour le traitement des erreurs.
Automation Engine
223
Attention : les e-mails avec ce script sont toujours envoyés via Automation Engine. Les fichiers à
envoyer en pièces jointes doivent par conséquent se trouver sur l'ordinateur d'Automation Engine ou y être
accessibles (chemin UNC).
Attention : une ligne de script ne peut pas comporter plus de 1024 caractères !
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die UC4-Datenbank
geschrieben werden.
L'envoi d'e-mails requiert la configuration de la connexion d'e-mail.
Exemples
Dans le premier exemple, un e-mail est envoyé à un seul destinataire (aucune copie). Cet e-mail est
accompagné d'une pièce jointe.
:SET &OUT# = SEND_MAIL("[email protected]",,"Entretien","Rendez-vous aujourd'hui
à 14 heures","/uc4/agenda")
Ici, un e-mail contenant deux pièces jointes est envoyé à plusieurs personnes.
:SET &OUT# = SEND_MAIL("[email protected];[email protected]",,"Réunion","Rendez-vous
annulé","c:\uc4\agenda.doc;c:\uc4\rendez-vous.txt")
Rubriques connexes :
Elément de
script
Description
:SEND_MSG
Envoie des messages à des Utilisateurs connectés à l'Interface Utilisateur.
:ON_ERROR
Détermine les réactions associées à certaines erreurs ou certains messages de
script.
Elément de script - Traitement des erreurs et messages
Exemples
Détermination du message d'erreur et du numéro de l'erreur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.6.10 SYS_LAST_ERR_INS
Fonction script : Indique la partie variable du message d'erreur pour la dernière erreur survenue.
Syntaxe
SYS_LAST_ERR_INS ()
Codes retour
Partie Variable du message de la dernière erreur survenue.
" " - Es ist kein Fehler aufgetreten.
224
Chapter 3 Organisation fonctionnelle
Remarques
Pour chaque Script sélectionné, l'utilisation de :ON_ERROR permet de poursuivre le Script malgré des
erreurs. Dans ce cas, la partie Variable du message d'erreur peut être déterminée par la fonction.
La plupart des messages d'erreur ne proviennent pas seulement d'un texte donné. Les parties du message
se rapportent par exemple aux noms d'objet ou aux lignes du Script. Ces parties variables du message
d'erreur sont placées entre guillemets simples.
Exemple de message d'erreur :
U0020657 : erreur de durée d'exécution dans l'objet '&01' ligne '&02' : aucun objet portant le nom '&04' n'a
été trouvé.
Lorsque le message d'erreur s'affiche, les parties variables sont remplies en conséquence :
U0020645 : erreur de durée d'exécution dans l'objet 'MOVE_OBJECT' ligne '0002' : aucun objet portant le
nom 'GS.FIN.2005' n'a été trouvé.
Exemple
L'exemple cherche à vérifier la capacité d'enregistrement d'un lecteur. S'il n'y en a pas ou s'il est
inaccessible, une erreur se produit. Le numéro d'erreur et la partie Variable du message d'erreur sont lus.
Ces informations permettent de déterminer le message d'erreur UC4 complet et de l'envoyer sous forme
de message à l'Utilisateur.
: SET &CHECK# = GET_FILESYSTEM ( "WIN21G" , "Z:\" , FILESYSTEM_SPACE_
TOTAL)
: SET &ERRINS# = SYS_LAST_ERR_INS ()
: IF &ERRINS# NE ""
:
SET &NUMERR# = SYS_LAST_ERR_NR ()
:
SET &MESSAGE# = GET_MSG_TXT ( &NUMERR# , &ERRINS# )
:
SEND_MSG BU,BU, &MESSAGE#
: ENDIF Rubriques connexes :
GET_MSG_TXT
Détermine le texte du message de la dernière erreur survenue.
GET_MSG_TYPE
Indique le type d'un numéro de message.
SYS_LAST_ERR_NR
Renvoie le numéro d'erreur de la dernière erreur survenue.
SYS_LAST_ERR_
SYSTXT
Détermine le texte d'erreur du système d'exploitation pour la dernière erreur
survenue
Elément de script - Traitement des erreurs et messages
Exemples
Détermination du message d'erreur et du numéro de l'erreur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.6.11 SYS_LAST_ERR_NR
Fonction script : Renvoie le numéro d'erreur de la dernière erreur survenue.
Automation Engine
225
Syntaxe
SYS_LAST_ERR_NR ()
Codes retour
Numéro de la dernière erreur survenue.
"0" : aucune erreur n'est survenue.
Remarques
Pour chaque Script sélectionné, l'utilisation de :ON_ERROR permet de poursuivre le Script malgré des
erreurs. Dans ce cas, le numéro d'erreur peut être déterminé par la fonction.
Exemple
L'exemple cherche à vérifier la capacité d'enregistrement d'un lecteur. S'il n'y en a pas ou s'il est
inaccessible, une erreur se produit. Le numéro d'erreur et la partie Variable du message d'erreur sont lus.
Ces informations permettent de déterminer le message d'erreur UC4 complet et de l'envoyer sous forme
de message à l'Utilisateur.
: SET &CHECK# = GET_FILESYSTEM ( "WIN21G" , "Z:\" , FILESYSTEM_SPACE_
TOTAL)
: SET &NUMERR# = SYS_LAST_ERR_NR ()
: IF &NUMERR# NE "0"
:
SET &ERRINS# = SYS_LAST_ERR_INS ()
:
SET &MESSAGE# = GET_MSG_TXT ( &NUMERR# , &ERRINS# )
:
SEND_MSG BU,BU, &MESSAGE#
: ENDIF Rubriques connexes :
GET_MSG_TXT
Détermine le texte du message de la dernière erreur survenue.
GET_MSG_TYPE
Indique le type d'un numéro de message.
SYS_LAST_ERR_INS
Indique la partie variable du message d'erreur pour la dernière erreur
survenue.
SYS_LAST_ERR_
SYSTXT
Détermine le texte d'erreur du système d'exploitation pour la dernière erreur
survenue
Elément de script - Traitement des erreurs et messages
Exemples
Détermination du message d'erreur et du numéro de l'erreur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.6.12 SYS_LAST_ERR_SYSTXT
Fonction script : Détermine le texte d'erreur du système d'exploitation pour la dernière erreur survenue
226
Chapter 3 Organisation fonctionnelle
Syntaxe
SYS_LAST_ERR_SYSTXT ()
Codes retour
Texte d'erreur du système d'exploitation de la dernière erreur survenue.
" " - Es ist kein Fehler aufgetreten.
Remarques
La fonction de Script permet de déterminer le texte d'erreur affiché en cas d'erreur du système
d'exploitation. Le code retour de la fonction de Script correspond à ce texte d'erreur ou à une chaîne vide
lorsqu'aucune erreur n'est survenue.
Exemple
L'exemple cherche à vérifier la capacité d'enregistrement d'un lecteur. S'il n'y en a pas, une erreur se
produit. Le texte d'erreur du système d'exploitation ("Le système ne peut pas trouver le chemin indiqué")
est ensuite envoyé sous forme de message à un Utilisateur.
: SET &CHECK# = GET_FILESYSTEM ( "WIN21G" , "Z:\" , FILESYSTEM_SPACE_
TOTAL)
: SET &MESSAGE# = SYS_LAST_ERR_SYSTXT ()
: IF &MESSAGE# NE ""
:
SEND_MSG BU,BU, "Erreur système : &MESSAGE#"
: ENDIF Rubriques connexes :
SYS_LAST_ERR_NR
Renvoie le numéro d'erreur de la dernière erreur survenue.
Elément de script - Traitement des erreurs et messages
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7 Données d'activation
3.7.1 GET_PARENT_NAME
Fonction script : Renvoie le nom de la Tâche supérieure (parent).
Syntaxe
GET_PARENT_NAME(RunID [, Type d'activation])
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de la Tâche subordonnée.
Automation Engine
Type d'activation
227
Valeurs autorisées :
ACT = Activator
PRC = Processor (valeur par défaut)
Codes retour
Nom de la Tâche supérieure.
"*SCRIPT" - La Tâche a été activée via CallAPI.
" " - Il n'existe aucune Tâche supérieure (uniquement pour le type d'activation PRC).
Remarques
La fonction de script vous permet de déterminer le nom de la Tâche supérieure d'un objet appartenant à la
classe des objets activables. En cas d'activation manuelle, il s'agit du nom de l'Objet Utilisateur (par ex.
HENRI/UC4).
Si vous n'indiquez pas de type d'activation, la fonction de script détermine le processeur.
Afin de déterminer le nom d'un Groupe, il faut activer "Générer à l'Exécution" (onglet Attributs) pour la
Tâche qui utilise la fonction script. Sinon, le nom ne peut être défini que pour les Jobs en post-traitement.
Exemple
Dans l'exemple suivant, le numéro courant d'une Tâche, et ensuite son activateur, sont déterminés.
:SET &RunID = GET_UC_OBJECT_NR(GS.FIN)
:SET &RET# = GET_PARENT_NAME(&RunID, ACT)
:PRINT "Nom de la Tâche supérieure : &RET#"
Rubriques connexes :
Elément de script
Description
GET_PARENT_NR
Renvoie le numéro courant (RunID) de la Tâche supérieure (parent).
GET_PARENT_TYPE
Renvoie le type d'objet de la Tâche supérieure (parent).
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.2 GET_PARENT_NR
Fonction script : Renvoie le numéro courant (RunID) de la Tâche supérieure (parent).
Syntaxe
GET_PARENT_NR( RunID [, Type d'activation])
Elément de syntaxe
Description/format
228
Chapter 3 Organisation fonctionnelle
RunID
Numéro courant (RunID) de la Tâche subordonnée.
Type d'activation
Valeurs autorisées :
ACT = Activator
PRC = Processor (valeur par défaut)
Codes retour
RunID de la Tâche supérieure.
ID de session en cas d'activation manuelle (uniquement pour le type d'activation ACT)
" " - Il n'existe aucune Tâche supérieure (uniquement pour le type d'activation PRC).
Remarques
La fonction de script vous permet de déterminer le numéro courant (RunID) de la Tâche supérieure d'un
objet appartenant à la classe des objets activables. En cas d'activation manuelle, il s'agit de l'ID de
session de l'Utilisateur.
Si vous n'indiquez pas de type d'activation, la fonction de script détermine le processeur.
Afin de déterminer le RunID d'un Groupe, il faut activer "Générer à l'Exécution"(onglet Attributs) pour
la Tâche qui utilise la fonction script. Sinon, le RunID ne peut être défini que pour les Jobs en posttraitement.
Exemple
Dans l'exemple suivant, le numéro courant d'une Tâche, et ensuite son activateur, sont déterminés.
:SET &RunID = GET_UC_OBJECT_NR(GS.FIN)
:SET &RET# = GET_PARENT_NR(&RunID, ACT)
:PRINT "RunID de la Tâche supérieure : &RET#"
Rubriques connexes :
Elément de script
Description
GET_PARENT_NAME
Renvoie le nom de la Tâche supérieure (parent).
GET_PARENT_TYPE
Renvoie le type d'objet de la Tâche supérieure (parent).
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.3 GET_PARENT_TYPE
Fonction script : Renvoie le type d'objet de la Tâche supérieure (parent).
Syntaxe
GET_PARENT_TYPE( RunID[, Type d'activation])
Automation Engine
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de la Tâche subordonnée.
Type d'activation
Valeurs autorisées :
229
ACT = Activator
PRC = Processor (valeur par défaut)
Codes retour
Type d'objet de la Tâche supérieure.
"USER" - Activation manuelle (uniquement pour le type d'activation ACT)
"API" - Activation via CallAPI (uniquement pour le type d'activation ACT).
" " - Il n'existe aucune Tâche supérieure (uniquement pour le type d'activation PRC).
Remarques
La fonction de script vous permet de déterminer le type d'objet de la Tâche supérieure d'un objet
appartenant à la classe d'objet des objets activables. En cas d'activation manuelle, il s'agit de "USER".
Si vous n'indiquez pas de type d'activation, la fonction de script détermine le processeur.
Pour déterminer le type d'objet d'un Groupe, il faut activer "Générer à l'Exécution" (onglet Attributs)
pour la Tâche qui utilise la fonction de script. Sinon, le type d'objet ne peut être défini que pour les Jobs en
post-traitement.
Exemple
Dans l'exemple suivant, le numéro courant d'une Tâche, et ensuite le type d'objet de son activateur, sont
déterminés.
:SET &RunID# = GET_UC_OBJECT_NR(MAWI.ABSCHLUSS)
:SET &RET# = GET_PARENT_TYPE(&RunID#, ACT)
:PRINT "Type de la Tâche supérieure: &RET#"
Rubriques connexes :
Elément de script
Description
GET_PARENT_NAME
Renvoie le nom de la Tâche supérieure (parent).
GET_PARENT_NR
Renvoie le numéro courant (RunID) de la Tâche supérieure (parent).
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.4 GET_UC_OBJECT_STATUS
Fonction script : Indique le statut d'un objet activé.
230
Chapter 3 Organisation fonctionnelle
Syntaxe
GET_UC_OBJECT_STATUS([[Type d'objet], [ RunID], [ Demande]])
Elément de syntaxe
Description/format
Type d'objet
Description courte du type d'objet activable.
Format : Nom UC4, Littéral de script ou Variable de script
Paramètre facultatif, car le type d'objet peut être attribué clairement par le
numéro courant (RunID) (compatible avec la version 2.6xx).
RunID
Numéro courant (RunID) de l'objet activé
Format : Littéral de script ou Variable de script
Demande
Information devant être transmise à l'objet activé
Format : Littéral de script ou Variable de script
Valeurs autorisées : "STATUS" (valeur par défaut), "RETCODE", "STATUS_
TEXT"
"RETCODE" = demande le code retour de l'objet activé.
"STATUS" = demande le code retour système actuel de l'objet activé.
"STATUS_TEXT" = demande le texte du statut. Cette valeur est uniquement
disponible dans les Jobs des Agents du système d'exploitation. Par exemple,
le texte de statut des Jobs SAP ne peut pas être transmis.
Codes retour
Suivant le cas, le code retour, le statut ou le texte de statut de la Tâche est indiqué.
" " - La Tâche indiquée n'existe pas.
Remarques
La fonction de script vous permet de définir le statut d'un objet appartenant à la classe des objets
activables.
La fonction de script renvoie également une valeur lorsque la Tâche n'est plus active. Elle est extraite
de la statistique. Si aucune statistique n'est trouvée, le code retour est une chaîne vide.
Tous les paramètres de la fonction de script sont facultatifs. Si vous utilisez uniquement le paramètre
demande, il faut quand même indiquer les deux virgules. Exemple :
:SET &STATUT# = GET_UC_OBJECT_STATUS( ,,"STATUS")
Si le type d'objet et le numéro courant (RunID) ne sont pas indiqués, la fonction de script renvoie le statut
de sa propre Tâche. Elle renvoie donc le statut de la Tâche qui utilise la fonction de script.
Si le type d'objet ou le numéro courant (RunID) ne sont pas indiqués, les particularités suivantes
s'appliquent.
l
l
l
Si le type d'objet est le seul paramètre indiqué, le code retour est le statut de sa propre Tâche. Le
type d'objet doit alors correspondre au type d'objet de sa propre Tâche.
Si le numéro courant (RunID) est le seul paramètre indiqué, le statut de sa propre Tâche ou le statut
d'une autre Tâche peut être renvoyé.
Si le numéro d'identification unique d'une autre Tâche est transmis à la fonction de script, les deux
Tâches doivent être du même type d'objet. Si ce n'est pas le cas, le type d'objet de l'autre Tâche
doit être indiqué clairement.
Automation Engine
231
Si le type d'objet et le numéro courant (RunID) ne correspondent pas, une chaîne vide est renvoyée. Une
chaîne vide est également renvoyée si aucune Tâche n'est trouvée pour le numéro courant (RunID)
indiqué.
Si aucune demande n'est utilisée, la fonction de script renvoie le code de statut.
Le texte du statut peut également être défini pour des Jobs. Il s'agit du texte que l'agent Job a affiché dans
la queue (trailer) ou qui a été modifié par :MODIFY_STATE. Pour les autres types d'objet, une chaîne vide
est renvoyée.
Exemple
Dans le premier exemple, le Job "DB.USE" est activé pour ensuite définir son statut. Pour obtenir le
numéro d'identification unique du Job, une autre fonction de script est utilisée.
:SET &NUMJOB#= ACTIVATE_UC_OBJECT(JOBS,DB.USE)
:SET &STATUT# = GET_UC_OBJECT_STATUS(JOBS,&NUMJOB#)
:PRINT "Le statut du Job(&NUMJOB#) est &STATUT#"
Le deuxième exemple détermine le statut d'une Tâche. Le statut est affiché dans le protocole d'activation.
:SET &RET# = GET_UC_OBJECT_STATUS()
:PRINT &RET#
Dans le troisième exemple, le statut du Workflow (parent) dans lequel est exécuté un Job doit être défini
dans le script du Job. Comme il existe différents types d'objet, le type d'objet et le numéro courant (RunID)
du Workflow doivent être transférés à la fonction script.
:SET &RUNNR# = SYS_ACT_PARENT_NR()
:SET &STATUT# = GET_UC_OBJECT_STATUS (JOBP,&RUNNR#)
:SEND_MSGBU,BU,"Le statut du Workflow est : &STATUT#."
Le quatrième exemple renvoie le texte du statut d'un Job.
:SET &RET# = GET_UC_OBJECT_STATUS(,,"STATUS_TEXT")
:PRINT &RET#
Rubriques connexes :
Elément de script
Description
:MODIFY_STATE
Modifie le code retour ou le texte du statut d'un Job une fois ce dernier terminé.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.5 GET_UC_OBJECT_NR
Fonction script : Indique le numéro courant (RunID) d'un objet activé.
Syntaxe
GET_UC_OBJECT_NR( nom d'objet)
232
Chapter 3 Organisation fonctionnelle
Elément de syntaxe
Description/format
Nom d'objet
Nom d'un objet activable.
Format : littéral de script ou Variable de script
Code retour
Numéro continu de l'objet activé
" " : l'objet indiqué n'est pas actif.
Remarques
La fonction de script GET_UC_OBJECT_NR vous permet de déterminer le numéro courant (RunID) d'un
objet appartenant à la classe des objets activables.
Si l'objet a été activé plusieurs fois, le numéro courant (RunID) le plus ancien est renvoyé.
Exemple
Dans l'exemple suivant, on vérifie si la Tâche est active.
:SET &RunID# = GET_UC_OBJECT_NR(&tâche#)
:IF &RunID# = ""
:
STOP MSG,50,"&la Tâche# n'est pas active !"
:ENDIF Rubriques connexes :
Elément de script
Description
GET_PARENT_NR
Renvoie le numéro courant (RunID) de la Tâche supérieure (parent).
SYS_ACT_TOP_NR
Détermine le numéro d'exécution (RunID) du Workflow de plus haut niveau.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.6 SYS_ACT_HOST
Fonction script : Détermine le nom de l'hôte.
Syntaxe
SYS_ACT_HOST()
Code retour
Nom de l'Agent de l'objet dans lequel la fonction de Script est exécutée.
Automation Engine
233
Remarques
La fonction de Script peut être utilisée dans des Evènements de type "système de fichiers" et "console"
(onglet Traitement et !Script) ainsi que dans des onglets Traitement de Jobs.
Attention : le nom renvoyé est celui de l'hôte de l'Evènement ou du Job exécuté en dernier. Celui-ci peut
être différent de l'hôte défini si, par exemple, l'hôte d'un Job est modifié par l'Utilisateur dans le dialogue
des attributs ou s'il est défini par un :PUT_ATT dans le pré-traitement.
Exemple
L'exemple illustre l'attribution d'un nom d'hôte à une Variable de Script. Cette Variable de Script est
ensuite utilisée comme premier paramètre de la fonction de Script GET_FILESYSTEM pour compter les
fichiers dans un répertoire temporaire.
:SET &HOTE# = SYS_ACT_HOST()
:SET &NOMBRE# = GET_FILESYSTEM(&HOTE#,"c:\temp\*.exe","PATH_FILE_COUNT")
Rubriques connexes :
SYS_HOST_ALIVE
Vérifie si un hôte particulier est actif.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.7 SYS_ACT_JP
Fonction script : Détermine si une tâche a été activée dans un Workflow.
Syntaxe
SYS_ACT_JP()
Codes retour
"Y" - La Tâche a été activée à partir d'un Workflow.
"N" - La Tâche n'a pas été activée à partir d'un Workflow.
Exemple
Dans l'exemple, une Tâche a été lancée manuellement. Le code retour est par conséquent "N" et entraîne
l'affichage du message "La Tâche n'est pas exécutée dans le Workflow" dans le protocole d'activation.
:SET &RET# = SYS_ACT_JP()
:IF &RET# = "Y"
:
PRINT "La Tâche est exécutée dans le Workflow"
:ELSE
:
PRINT "La Tâche n'est pas exécutée dans le Workflow"
:ENDIF
234
Chapter 3 Organisation fonctionnelle
Rubriques connexes :
Elément de script
Description
SYS_ACT_PARENT_NAME
Renvoie le nom de la Tâche supérieure.
SYS_ACT_PARENT_NR
Renvoie le numéro courant (RunID) de la Tâche supérieure.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.8 SYS_ACT_ME_NAME
Fonction script : Indique le nom de l'objet concerné.
Syntaxe
SYS_ACT_ME_NAME ()
Code retour
Nom de l'objet dans lequel la fonction de Script est exécutée.
Exemple
Le nom et le statut d'un Job sont déterminés pendant son post-traitement. Si le Job ne se termine pas
normalement (ENDED_OK - 1900), son interruption est indiquée par e-mail.
:SET &NOM# =SYS_ACT_ME_NAME()
:SET &STATUT# = GET_UC_OBJECT_STATUS()
:IF &STATUT# <"1900"
:
SET &OUT# = SEND_MAIL("[email protected]",,"Interruption du Job","Job :
&NOM# a été interrompu")
:ENDIF Rubriques connexes :
Elément de script
Description
SYS_ACT_ME_NR
Indication du numéro courant (RunID) de l'objet considéré.
SYS_ACT_ME_TYPE
Indique le type de l'objet concerné.
Elément de script - Données d'activation
Exemples
Détermination du message d'erreur et du numéro de l'erreur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.9 SYS_ACT_ME_NR
Fonction script : Indication du numéro courant (RunID) de l'objet considéré.
Automation Engine
235
Syntaxe
SYS_ACT_ME_NR()
Code retour
Numéro courant de l'objet dans lequel la fonction de Script est exécutée.
Remarques
En cas de reprise de la Tâche avec le RunID de référence, la fonction de Script indique ce RunID de
référence, et non pas le RunID de l'exécution. Utilisez SYS_ACT_RESTART_ME_NR pour obtenir
immédiatement le numéro courant de l'objet activé en mode de reprise.
Exemple
Dans l'exemple, le RunID d'une Tâche sert à obtenir des informations sur le parent. Si la Tâche a été
démarrée par un Utilisateur, le nom de ce dernier s'affiche dans le protocole d'activation. Si le démarrage a
été lancé par une Tâche, c'est le nom de cette Tâche qui s'affiche.
:SET &RUNID# = SYS_ACT_ME_NR()
:SET &NOMP# = GET_PARENT_NAME(, &RUNID#, "ACT")
:PRINT "Nom du parent : &NOMP#"
Rubriques connexes :
Elément de script
Description
SYS_ACT_ME_NAME
Indique le nom de l'objet concerné.
SYS_ACT_ME_TYPE
Indique le type de l'objet concerné.
Elément de script - Données d'activation
Exemples
Détermination du message d'erreur et du numéro de l'erreur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.10 SYS_ACT_ME_TYPE
Fonction script : Indique le type de l'objet concerné.
Syntaxe
SYS_ACT_ME_TYPE()
Code retour
Acronyme du type de l'objet dans lequel la fonction de Script est exécutée.
236
Chapter 3 Organisation fonctionnelle
Remarques
La fonction de Script détermine le type d'objet (forme abrégée) de l'objet concerné.
Exemple
Dans l'exemple, SYS_ACT_ME_TYPE est utilisé dans le Script d'un Job et le code retour "JOBS"
s'affiche dans le protocole d'activation.
:SET &RET# = SYS_ACT_ME_TYPE()
:PRINT "Type d'objet : &RET#"
Rubriques connexes :
Elément de script
Description
SYS_ACT_ME_NAME
Indique le nom de l'objet concerné.
SYS_ACT_ME_NR
Indication du numéro courant (RunID) de l'objet considéré.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.11 SYS_ACT_PARENT_NAME
Fonction script : Indique le nom de la Tâche supérieure.
Syntaxe
SYS_ACT_PARENT_NAME ([type d'activation])
Elément de syntaxe
Description/format
Type d'activation
Valeurs autorisées :
ACT = Activator
PRC = Processor (valeur par défaut)
Codes retour
Nom de la Tâche supérieure.
"*SCRIPT" - La Tâche a été activée via CallAPI.
" " - Il n'existe aucune Tâche supérieure (uniquement pour le type d'activation PRC).
Remarques
La fonction de script détermine le nom de la Tâche supérieure (parent). En cas d'activation manuelle, il
s'agit du nom de l'Objet Utilisateur (par ex. HENRI/UC4).
Si vous n'indiquez pas de type d'activation, la fonction de script détermine le processeur.
Automation Engine
237
Afin de déterminer le nom d'un Groupe, il faut activer "Générer à l'Exécution" (onglet Attributs) pour la
Tâche qui utilise la fonction script. Sinon, le nom ne peut être défini que pour les Jobs en post-traitement.
Exemples
Dans le premier exemple, le système vérifie si la Tâche est exécutée dans un Groupe, un Workflow ou un
Schedule. Le cas échéant, le nom de la Tâche est écrit dans le protocole d'activation. S'il n'y a pas de
Tâche supérieure, cela est indiqué par une entrée dans le protocole d'activation.
:SET &NOM# = SYS_ACT_PARENT_NAME()
:IF &NOM# NE " "
:
PRINT "Le nom du parent est &NOM#."
:ELSE
:
PRINT"Il n'y a pas de parent"
:ENDIF
Le deuxième exemple détermine l'activateur de la Tâche. Son nom est affiché dans le protocole
d'activation. Si la Tâche a été activée manuellement, le protocole d'activation contient le nom et le
département de chaque Utilisateur.
:SET &NOM# = SYS_ACT_PARENT_NAME(ACT)
:PRINT "La Tâche a été activée par &NOM#."
Dans le troisième exemple, l'activateur d'une Tâche est déterminé de la même manière que dans le
deuxième exemple. Si l'activation est réalisée par un CallAPI, une ligne correspondante est affichée dans
le protocole d'activation, par exemple :
2004-01-27 13:19:36 - U0020408 La Tâche a été activée par *SCRIPT.
Rubriques connexes :
Elément de script
Description
SYS_ACT_PARENT_NR
Indique le numéro courant (RunID) de la Tâche supérieure.
SYS_ACT_PARENT_TYPE
Indique le type d'objet de la Tâche supérieure.
Elément de script - Données d'activation
Exemples
Alerte avec texte du message variable
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.12 SYS_ACT_PARENT_NR
Fonction script : Indique le numéro courant (RunID) de la Tâche supérieure.
Syntaxe
SYS_ACT_PARENT_NR ([type d'activation])
Elément de syntaxe
Description/format
238
Chapter 3 Organisation fonctionnelle
Type d'activation
Valeurs autorisées :
ACT = Activator
PRC = Processor (valeur par défaut)
Codes retour
RunID de la Tâche supérieure.
ID de session en cas d'activation manuelle (uniquement pour le type d'activation ACT)
" " - Il n'existe aucune Tâche supérieure (uniquement pour le type d'activation PRC).
Remarques
La fonction de script détermine le numéro courant (RunID) de la Tâche supérieure (parent). En cas
d'activation manuelle, il s'agit de l'ID de session de l'Utilisateur.
Si vous n'indiquez pas de type d'activation, la fonction de script détermine le processeur.
Afin de déterminer le RunID d'un Groupe, il faut activer "Générer à l'Exécution"(onglet Attributs) pour
la Tâche qui utilise la fonction script. Sinon, le RunID ne peut être défini que pour les Jobs en posttraitement.
Exemples
Dans le premier exemple, le système vérifie si la Tâche est exécutée dans un Groupe, un Workflow ou un
Schedule. Le cas échéant, le numéro courant (RunID) de la Tâche est écrit dans le protocole d'activation.
S'il n'y a pas de Tâche supérieure, cela est indiqué par une entrée dans le protocole d'activation.
:SET &NUM#= SYS_ACT_PARENT_NR()
:IF &NUM# =" "
:
PRINT "Il n'y a pas de parent"
:ELSE
:
:PRINT "Le RunID du parent est &NUM#."
:ENDIF Le deuxième exemple détermine l'activateur de la Tâche. Le numéro courant (RunID) d'une Tâche est
affiché dans le protocole d'activation lorsque l'activation est réalisée par une Tâche. Si la Tâche a été
activée manuellement, le protocole d'activation contient le RunID de la session Utilisateur
correspondante.
:SET &NUM#= SYS_ACT_PARENT_NR(ACT)
:PRINT "Le RunID du parent est &NR#."
Rubriques connexes :
Elément de script
Description
SYS_ACT_PARENT_NAME
Indique le nom de la Tâche supérieure.
SYS_ACT_PARENT_TYPE
Indique le type d'objet de la Tâche supérieure.
Elément de script - Données d'activation
Exemples
Alerte avec texte du message variable
Automation Engine
239
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.13 SYS_ACT_PARENT_TYPE
Fonction script : Indique le type d'objet de la Tâche supérieure.
Syntaxe
SYS_ACT_PARENT_TYPE(type d'activation)
Elément de syntaxe
Description/format
Type d'activation
Valeurs autorisées :
ACT = Activator
PRC = Processor (valeur par défaut)
Codes retour
Type d'objet de la Tâche supérieure.
"USER" - Activation manuelle (uniquement pour le type d'activation ACT)
"API" - Activation via CallAPI (uniquement pour le type d'activation ACT).
" " - Il n'existe aucune Tâche supérieure (uniquement pour le type d'activation PRC).
Remarques
La fonction de script détermine le type d'objet de la Tâche supérieure (parent). En cas d'activation
manuelle, il s'agit de "USER".
Si vous n'indiquez pas de type d'activation, la fonction de script détermine le processeur.
Pour déterminer le type d'objet d'un Groupe, il faut activer "Générer à l'Exécution" (onglet Attributs)
pour la Tâche qui utilise la fonction de script. Sinon, le type d'objet ne peut être défini que pour les Jobs en
post-traitement.
Exemples
Dans le premier exemple, le système vérifie si la Tâche est exécutée dans un Groupe, un Workflow ou un
Schedule. Le cas échéant, le type d'objet de la Tâche est écrit dans le protocole d'activation. S'il n'y a pas
de Tâche supérieure, cela est indiqué par une entrée dans le protocole d'activation.
:SET &TYPE# = SYS_ACT_PARENT_TYPE()
:IF &TYPE# =" "
:
PRINT "Il n'y a pas de parent"
:ELSE
:
PRINT "l'objet du parent est de type &TYPE#."
:ENDIF 240
Chapter 3 Organisation fonctionnelle
Le deuxième exemple détermine l'activateur de la Tâche. Le type d'objet d'une Tâche est affiché dans le
protocole d'activation lorsque l'activation est réalisée par une Tâche. Si la Tâche a été activée
manuellement, le protocole d'activation contient l'entrée "La Tâche a été activée par USER".
:SET &TYPE# = SYS_ACT_PARENT_TYPE(ACT)
:PRINT "La Tâche a été activée par &TYPE#."
Dans le troisième exemple, l'activateur d'une Tâche est déterminé de la même manière que dans le
deuxième exemple. Si l'activation est réalisée par le CallAPI, une ligne correspondante est affichée dans
le protocole d'activation, par exemple :
28.01.04 11:19:26 : la Tâche U0020408 a été activée par API.
Rubriques connexes :
Elément de script
Description
SYS_ACT_PARENT_NAME
Indique le nom de la Tâche supérieure.
SYS_ACT_PARENT_NR
Indique le numéro courant (RunID) de la Tâche supérieure.
Elément de script - Données d'activation
Types d'objets
Exemples
Alerte avec texte du message variable
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.14 SYS_ACT_PREV_NAME
Fonction script : Indique le nom de la Tâche précédente dans un Workflow.
Syntaxe
SYS_ACT_PREV_NAME()
Codes retour
Nom de la Tâche précédente
"START" : La Tâche est la première du Workflow, car il s'agit du point de départ pour le prédécesseur.
Remarques
Seules les Tâches exécutées dans des Workflows peuvent contenir cette fonction de script.
De même, la fonction de script est uniquement acceptée lorsqu'il y a exactement une Tâche précédente.
S'il existe plusieurs prédécesseurs directs, une erreur de durée d'exécution se produit et le script
s'interrompt.
Exemple
Le nom de la Tâche précédente dans un Workflow est affiché dans le protocole d'activation.
Automation Engine
241
:SET &NOM# = SYS_ACT_PREV_NAME()
:PRINT "Nom de la Tâche précédente : &NOM#."
Rubriques connexes :
Elément de script
Description
SYS_ACT_PREV_NR
Indique le numéro courant (RunID) de la Tâche précédente dans un Workflow.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.15 SYS_ACT_PREV_NR
Fonction script : Indique le numéro courant (RunID) de la Tâche précédente dans un Workflow.
Syntaxe
SYS_ACT_PREV_NR()
Codes retour
RunID de la Tâche précédente
"0" : La Tâche est la première du Workflow, car il s'agit du point de départ pour le prédécesseur.
Remarques
Seules les Tâches exécutées dans des Workflows peuvent contenir cette fonction de script.
De même, la fonction de script est uniquement acceptée lorsqu'il y a exactement une Tâche précédente.
S'il existe plusieurs prédécesseurs directs, une erreur de durée d'exécution se produit et le script
s'interrompt.
Exemple
Le numéro courant (RunID) de la Tâche précédente dans un Workflow est affiché dans le protocole
d'activation.
:SET &NUM#= SYS_ACT_PREV_NR()
:PRINT "RunID de la Tâche précédente &NUM#."
Rubriques connexes :
Elément de script
Description
SYS_ACT_PREV_NAME
Indique le nom de la Tâche précédente dans un Workflow.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
242
Chapter 3 Organisation fonctionnelle
3.7.16 SYS_ACT_PTTYP
Fonction script : Indique le type de partenaire de l'Utilisateur.
Syntaxe
SYS_ACT_PTTYP()
Codes retour
"D" - activation par l'Interface Utilisateur
"C" - activation par un CallAPI
Remarques
La fonction de Script détermine la manière dont une Tâche a été activée. Elle ne peut pas être utilisée
pendant le post-traitement.
Exemple
L'exemple montre comment une ligne de conseil est écrite dans le protocole d'activation lorsque
l'activation est réalisée par le CallAPI.
:SET &PTTYP# = SYS_ACT_PTTYP()
:IF &PTTYP# ="C"
:
PRINT "La Tâche a été activée par CallAPI."
:ENDIF Rubriques connexes :
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.17 SYS_ACT_RESTART
Fonction script : Détermine si l'objet a été activé en mode de reprise.
Syntaxe
SYS_ACT_RESTART()
Codes retour
"Y" - l'objet a été activé en mode de reprise.
"N" - il ne s'agit pas d'une reprise.
Automation Engine
243
Exemple
Dans l'exemple, les étapes de traitement enregistrées dans un objet Include sont uniquement exécutées
lorsque la Tâche est réalisée en reprise.
:IF SYS_ACT_RESTART() = "Y"
:
INCLUDE "INCL.RESTART.PROC"
:ENDIF
Rubriques connexes :
Elément de script
Description
:RESTART
Définit des points de reprise dans un objet activable.
SYS_ACT_RESTART_ME_
NR
Indique le numéro courant (RunID) de l'objet activé en mode de
reprise.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.18 SYS_ACT_RESTART_COUNT
Fonction script : Indique le nombre de reprises de Tâches de Workflow qui sont exécutées par
l'instruction RESTART TASK (Post-conditions)
Syntaxe
SYS_ACT_RESTART_COUNT()
Code retour
Nombre de reprises
Remarques
Le script permet de déterminer la fréquence à laquelle une Tâche a déjà été redémarrée au sein d'un
Workflow via l'instruction RESTART TASK. Cette instruction peut être définie dans les propriétés des
Tâches dans l'onglet "Post-conditions".
Cette valeur peut également être appelée à l'aide de la Variable &$RESTART_COUNT#.
Exemple
Dans cet exemple, le nombre de reprises précédentes de la Tâche de Workflow est demandé et
l'information est consignée dans le protocole d'activation.
:SET &RCOUNT# = SYS_ACT_RESTART_COUNT()
:IF &RCOUNT# = 0
:
PRINT "Aucune reprise de la Tâche n'a encore été exécutée."
:ELSE
244
Chapter 3 Organisation fonctionnelle
:
PRINT "Nombre de reprises: &RCOUNT#"
:ENDIF
Rubriques connexes :
Elément de script
Description
:RESTART
Définit des points de reprise dans un objet activable.
SYS_ACT_RESTART
Détermine si l'objet a été activé en mode de reprise.
SYS_ACT_RESTART_ME_
NR
Indique le numéro courant (RunID) de l'objet activé en mode de
reprise.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.19 SYS_ACT_RESTART_ME_NR
Fonction script : Indique le numéro courant (RunID) de l'objet activé en mode de reprise.
Syntaxe
SYS_ACT_RESTART_ME_NR()
Code retour
Numéro courant de l'objet dans lequel la fonction de Script est exécutée.
Remarques
La fonction de Script rend également le RunID concerné lorsque la Tâche a été activée normalement.
Elle peut également être utilisée sans avoir vérifié au préalable si l'activation ou la reprise a été réalisée
normalement. Attention : le comportement de SYS_ACT_ME_NR est différent en mode de reprise.
Exemple
Dans l'exemple, le numéro courant (RunID) d'une Tâche est écrit dans le protocole d'activation. Parmi les
informations supplémentaires, il est indiqué si la Tâche a été exécutée normalement ou en reprise.
:SET &RUNID# = SYS_ACT_RESTART_ME_NR()
:IF SYS_ACT_RESTART = "Y"
:
PRINT "Job portant le RunID &RUNID# exécuté en reprise."
:ELSE
:
PRINT "Job portant le RunID &RUNID# exécuté normalement."
:ENDIF Rubriques connexes :
Elément de script
Description
Automation Engine
:RESTART
Définit des points de reprise dans un objet activable.
SYS_ACT_RESTART
Détermine si l'objet a été activé en mode de reprise.
245
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.20 SYS_ACT_TOP_NAME
Fonction script : Indique le nom du Workflow le plus élevé.
Syntaxe
SYS_ACT_TOP_NAME()
Codes retour
Nom du Workflow de plus haut niveau
" "- La Tâche n'a pas été activée par un Workflow.
Exemple
Dans l'exemple, les codes retour des fonctions de script sont comparés pour déterminer si la Tâche a été
activée avec ou sans Workflow, ou dans le cadre de Workflows imbriqués. En fonction de cela, des
messages sont envoyés à un Utilisateur.
:SET &NOMT# = SYS_ACT_TOP_NAME()
:SET &NOMP# = SYS_ACT_PARENT_NAME()
:IF &NOMT = &NOMP#
:
IF &NOMT# = " "
:
SEND_MSG ADMIN,UC4,"La Tâche n'est pas exécutée dans un Workflow."
:
ELSE
:
SEND_MSG ADMIN,UC4,"La Tâche est exécutée dans le Workflow &TNAME#.
Aucun Workflow supérieur."
:
ENDIF
:ELSE
:
SEND_MSG ADMIN,UC4,"Nom du Workflow de plus haut niveau : &NOMT#."
:ENDIF Rubriques connexes :
Elément de script
Description
SYS_ACT_TOP_NR
Détermine le numéro d'exécution (RunID) du Workflow de plus haut niveau.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
246
Chapter 3 Organisation fonctionnelle
3.7.21 SYS_ACT_TOP_NR
Fonction script : Détermine le numéro d'exécution (RunID) du Workflow de plus haut niveau.
Syntaxe
SYS_ACT_TOP_NR()
Codes retour
RunID du Workflow de plus haut niveau
" "- La Tâche n'a pas été activée par un Workflow.
Exemple
Dans l'exemple, les codes retour des fonctions de script sont comparés pour déterminer si la Tâche a été
activée avec ou sans Workflow, ou dans le cadre de Workflows imbriqués. En fonction de cela, des
messages sont envoyés à un Utilisateur.
:SET &NUMT# = SYS_ACT_TOP_NR()
:SET &NUMP# = SYS_ACT_PARENT_NR()
:IF &NUMT# =&NUMP#
:
IF &NUMT# = " "
:
SEND_MSG ADMIN,UC4,"La Tâche n'est pas exécutée dans un Workflow."
:
ELSE
:
SEND_MSG ADMIN,UC4,"La Tâche est exécutée dans le Workflow avec le
RunID &TNUM#. Aucun Workflow supérieur."
:
ENDIF
:ELSE
:
SEND_MSG ADMIN,UC4,"RunID du Workflow de plus haut niveau : &NUMT#."
:ENDIF Rubriques connexes :
Elément de script
Description
SYS_ACT_TOP_NAME
Indique le nom du Workflow le plus élevé.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.22 SYS_ACT_USERID
Fonction script : Indique l'ID Utilisateur sous lequel le Job est exécuté.
Syntaxe
SYS_ACT_USERID ()
Code retour
Automation Engine
247
Nom d'Utilisateur issu de l'objet Login.
Remarques
Cette fonction de Script peut être utilisée uniquement dans des Jobs. Elle détermine l'ID Utilisateur avec
lequel un Job est exécuté. Elle est lue à partir des informations de connexion de l'objet Login qui a été
défini dans l'onglet "Attributs" pour le Job.
La fonction de Script indique le même résultat que GET_ATT avec l'attribut USERID.
Exemple
Dans l'exemple, l'ID Utilisateur et les informations de connexion complètes sont affichés dans le protocole
d'activation.
: SET &URET# = SYS_ACT_USERID ()
: SET &LRET# = GET_ATT (LOGIN_INFO)
: PRINT "Utilisateur : &URET#" , "Informations de connexion complètes :
&LRET#"
Rubriques connexes :
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.23 SYS_LAST_RESTART_POINT
Fonction script : Indique la désignation du point de reprise précédent dans le script.
Syntaxe
SYS_LAST_RESTART_POINT()
Codes retour
Nom du dernier point de reprise exécuté.
" " - aucun point de reprise n'a été défini.
Remarques
Les points de reprise sont définis par l'élément de script :RESTART.
Exemple
Dans l'exemple, des fichiers sont enregistrés depuis le répertoire UC4. "BIN" est écrit en tant que point de
reprise précédent dans le protocole d'activation.
248
Chapter 3 Organisation fonctionnelle
:RESTART BIN, "Répertoire du programme"
COPY C:\UC4G\BIN\*.* C:\BACKUP\UC4G\BIN\*.* /Y
:INC DOS.ERRORLEVEL
:SET &RET# = SYS_LAST_RESTART_POINT()
:PRINT "Dernier point de reprise : &RET#"
:RESTART DB,"Répertoire de la base de données"
XCOPY C:\UC4G\DB\*.* C:\BACKUP\UC4G\DB\*.* /E /Y
:INC DOS.ERRORLEVEL
Rubriques connexes :
Elément de script
Description
:RESTART
Définit des points de reprise dans un objet activable.
SYS_LAST_RESTART_TEXT
Indique le texte du point de reprise précédent dans le script.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.24 SYS_LAST_RESTART_TEXT
Fonction script : Indique le texte du point de reprise précédent dans le script.
Syntaxe
SYS_LAST_RESTART_TEXT()
Codes retour
Texte du dernier point de reprise exécuté.
"Restart Point Nom du point de reprise" - un point de reprise a été défini sans texte.
" " - aucun point de reprise n'a été défini.
Remarques
Les points de reprise sont définis par l'élément de script :RESTART.
Exemples
Dans le premier exemple, des fichiers sont enregistrés depuis le répertoire UC4. "Répertoire du
programme" est écrit en tant que texte du point de reprise précédent dans le protocole d'activation.
:RESTART BIN, "Répertoire du programme"
COPY C:\UC4G\BIN\*.* C:\BACKUP\UC4G\BIN\*.* /Y
:INC DOS.ERRORLEVEL
:SET &RET# = SYS_LAST_RESTART_TEXT()
:PRINT "Dernier point de reprise : &RET#"
Automation Engine
249
:RESTART DB,"Répertoire de la base de données"
XCOPY C:\UC4G\DB\*.* C:\BACKUP\UC4G\DB\*.* /E /Y
:INC DOS.ERRORLEVEL
Le deuxième exemple indique le résultat "Restart Point BIN", car aucun texte n'a été défini pour le point de
reprise.
:RESTART BIN
:SET &RET# = SYS_LAST_RESTART_TEXT()
:PRINT &RET#
Rubriques connexes :
Elément de script
Description
:RESTART
Définit des points de reprise dans un objet activable.
SYS_LAST_RESTART_POINT
Indique la désignation du point de reprise précédent dans le script.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.7.25 SYS_RESTART_POINT
Fonction script : Indique le point de reprise utilisé pour l'exécution de l'objet.
Syntaxe
SYS_RESTART_POINT()
Codes retour
Nom du point de reprise
" " - Le Script n'est pas exécuté à partir d'un point de reprise donné ou, d'une manière générale, en mode
de reprise.
Remarques
La fonction de Script détermine à partir de quel point de reprise le Script est traité lorsqu'une Tâche a été
démarrée par Exécuter... sous l'indication d'un point de reprise.
Les points de reprise sont définis par l'élément de script :RESTART.
Exemple
Dans l'exemple, des fichiers sont enregistrés depuis le répertoire UC4. En cas de reprise du Job sous
l'indication "DB" en tant que point de reprise, seuls les fichiers provenant du répertoire de la base de
données sont copiés (y compris tous les sous-répertoires). Un conseil correspondant s'affiche dans le
protocole d'activation.
:RESTART BIN, "Répertoire du programme"
COPY C:\UC4G\BIN\*.* C:\BACKUP\UC4G\BIN\*.* /Y
:INC DOS.ERRORLEVEL
250
Chapter 3 Organisation fonctionnelle
:RESTART DB,"Répertoire de la base de données"
XCOPY C:\UC4G\DB\*.* C:\BACKUP\UC4G\DB\*.* /E /Y
:INC DOS.ERRORLEVEL
:SET &RET# = SYS_RESTART_POINT()
:PRINT "Le Script a été traité à partir du point &RET#."
Rubriques connexes :
Elément de script
Description
:RESTART
Définit des points de reprise dans un objet activable.
RESTART_UC_OBJECT
Répète l'exécution d'une tâche.
SYS_ACT_RESTART
Détermine si l'objet a été activé en mode de reprise.
SYS_ACT_RESTART_ME_
NR
Indique le numéro courant (RunID) de l'objet activé en mode de
reprise.
SYS_LAST_RESTART_
POINT
Indique la désignation du point de reprise précédent dans le script.
SYS_LAST_RESTART_TEXT
Indique le texte du point de reprise précédent dans le script.
Elément de script - Données d'activation
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.8 Données Utilisateur
3.8.1 IS_GROUP_MEMBER
Fonction script : Vérifie qu'un Utilisateur appartient à un Groupe Utilisateur spécifique.
Syntaxe
IS_GROUP_MEMBER (Utilisateur, Groupe Utilisateur)
Elément de syntaxe
Description/format
Utilisateur
Nom d'un objet Utilisateur.
Format : Littéral de script ou Variable de script
Groupe Utilisateur
Nom d'un objet Groupe Utilisateur.
Format : Littéral de script ou Variable de script
Codes retour
"1" - L'Utilisateur est membre du Groupe.
"0" - L'Utilisateur n'est pas membre du Groupe ou l'Utilisateur et/ou le Groupe Utilisateur n'existent pas.
Automation Engine
251
Remarques
La fonction de Script permet de vérifier si un Utilisateur est membre d'un Groupe Utilisateur. Tous deux
doivent se trouver sur le Client où la fonction de Script est exécutée.
Exemple
L'exemple vérifie si l'Utilisateur "BU/UC4" est membre du Groupe "ADMIN". Le résultat s'affiche dans le
protocole d'activation.
:SET &USGR#
="ADMIN"
:SET &MEMBER# = IS_GROUP_MEMBER("BU/UC4", &USGR#)
:IF &MEMBER# = 1
:
PRINT "Membre du Groupe &USGR#"
:ELSE
:
PRINT "Non-membre du Groupe &USGR#"
:ENDIF
Rubriques connexes :
Scripts - Données Utilisateur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.8.2 SYS_ACT_CLIENT, SYS_USER_CLIENT
Fonction script : Indique le numéro du Client actuel.
Syntaxe
SYS_ACT_CLIENT ()
SYS_USER_CLIENT ()
Code retour
Numéro du Client actuel
Remarques
Le nombre renvoyé est un numéro de Client à 4 chiffres avec zéros en tête. Chacun sert de Client dans
lequel la Tâche est exécutée et exécute la fonction de script.
Exemple
Le numéro du Client actuel est lu dans une Variable de Script. Une ligne avec cette information (par ex :
"0003") est affiché dans le rapport.
:SET &CLIENT# = SYS_ACT_CLIENT()
:PRINT "Client actuel: &CLIENT#"
252
Chapter 3 Organisation fonctionnelle
Rubriques connexes :
Elément de script
Description
SYS_ACT_CLIENT_TEXT
Indique le texte du Client actuel.
Scripts - Données Utilisateur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.8.3 SYS_ACT_CLIENT_TEXT
Fonction script : Indique le texte du Client actuel.
Syntaxe
SYS_ACT_CLIENT_TEXT ()
Codes retour
Titre du Client actuel.
" " - Aucun titre n'a été défini.
Remarques
La fonction de script renvoie le titre du Client, qui peut être entré dans l'onglet En-tête de l'objet Client.
Chacun sert de Client dans lequel la Tâche est exécutée et exécute la fonction de script.
Exemple
Le texte du Client actuel est lu dans une Variable de script. Le résultat "Titre Client actuel : système de
production" s'affiche dans le rapport.
:SET &TXT#=SYS_ACT_CLIENT_TEXT()
:PRINT "Titre Client actuel : &TXT#"
Rubriques connexes :
Elément de script
Description
SYS_ACT_CLIENT ou SYS_USER_CLIENT
Indique le numéro du Client actuel.
Scripts - Données Utilisateur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.8.4 SYS_USER_ALIVE
Fonction script : Vérifie si l'utilisateur est connecté à UC4 par une Interface Utilisateur.
Automation Engine
253
Syntaxe
SYS_USER_ALIVE(nom, département)
Elément de syntaxe
Description/format
Nom
Nom de l'Utilisateur.
Format : Littéral de script ou Variable de script
Département
Département de l'Utilisateur.
Format : Littéral de script ou Variable de script
Codes retour
"Y" - L'utilisateur est connecté à l'Interface Utilisateur.
"N" - L'utilisateur n'est pas connecté à l'Interface Utilisateur ou l'objet Utilisateur indiqué n'existe pas.
Remarques
La fonction de Script vérifie si un utilisateur est connecté à UC4.
L'utilisateur est désigné par nom et par département (par ex.DUPONT/UC4). Seuls les utilisateurs d'un
même Client peuvent être vérifiés.
Les utilisateurs connectés à UC4 par un utilitaire ou un CallAPI ne sont pas reconnus.
La fonction de Script renvoie "N" lorsque l'utilisateur n'est pas connecté ou que l'objet utilisateur n'existe
pas dans le Client actuel. Dans ce dernier cas, vous pouvez réagir à cette erreur en utilisant l'instruction de
Script :ON_ERROR et l'analyser à l'aide des fonctions de Script pour le traitement des erreurs. Selon le
paramétrage, le script reprend ou est interrompu.
Exemple
L'exemple vérifie si un utilisateur est connecté à UC4. Le nom et le département sont transmis à la
fonction de Script sous forme de Variable de Script. Le Script s'interrompt lorsque l'utilisateur
"DUPONT/UC4" n'est pas défini. Le résultat s'affiche dans le protocole d'activation.
:ON_ERROR ABEND
:SET &USR# = "DUPONT"
:SET &DEP# = "UC4"
:SET &RET# = SYS_USER_ALIVE(&USR#, &DEP#)
:PRINT&RET#
Rubriques connexes :
Elément de script
Description
SYS_USER_DEP
Indique le département de l'Utilisateur qui a démarré la Tâche.
SYS_USER_LANGUAGE
Indique la langue dans laquelle le Serveur génère les fichiers log.
SYS_USER_LNAME
Indique le nom et le prénom de l'Utilisateur qui a démarré la Tâche.
SYS_USER_NAME
Indique le nom de l'Utilisateur qui a démarré la Tâche.
Scripts - Données Utilisateur
254
Chapter 3 Organisation fonctionnelle
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.8.5 SYS_USER_DEP
Fonction script : Indique le département de l'Utilisateur qui a démarré la Tâche.
Syntaxe
SYS_USER_DEP()
Code retour
Département de l'Utilisateur
Remarques
La fonction de script détermine de département de l'Utilisateur (ex: "UC4" pour "MEIER/UC4") qui a
démarré la Tâche.
Attention : les Tâches peuvent être démarrées aussi bien manuellement que par l'élément de script
"ACTIVATE_UC_OBJECT", à partir des Workflows et des Schedules. Donc par exemple, si la Tâche
dans laquelle le script "SYS_USER_DEP" est exécuté est une partie d'un Schedule, la fonction de script
indique le département de l'Utilisateur qui a démarré le Schedule.
L'Utilisateur est également identifiable dans les Statistiques.
Exemple
Dans l'exemple, le département déterminé par la fonction de script est écrit dans le protocole d'activation à
partir de la connexion.
:SET &LOGDEP# = SYS_USER_DEP()
:PRINT "Informations de connexion : Département de l'Utilisateur :
&LOGDEP#."
Rubriques connexes :
Elément de script
Description
SYS_USER_ALIVE
Vérifie si l'Utilisateur est connecté à UC4 par une Interface Utilisateur.
SYS_USER_LANGUAGE
Indique la langue dans laquelle le Serveur génère les fichiers log.
SYS_USER_LNAME
Indique le nom et le prénom de l'Utilisateur qui a démarré la Tâche.
SYS_USER_NAME
Indique le nom de l'Utilisateur qui a démarré la Tâche.
Scripts - Données Utilisateur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
Automation Engine
3.8.6 SYS_USER_LNAME
Fonction script : Indique le nom et le prénom de l'Utilisateur qui a démarré la Tâche.
Syntaxe
SYS_USER_LNAME()
Codes retour
Prénom et nom de l'Utilisateur.
" " - Le nom n'a pas été défini.
Remarques
La fonction de script détermine le prénom et le nom de l'Utilisateur (ex: "Hans Meier") qui a démarré la
Tâche. Le nom complet est défini dans l'onglet Utilisateur de l'objet Utilisateur.
Attention : les Tâches peuvent être démarrées aussi bien manuellement que par l'élément de script
"ACTIVATE_UC_OBJECT", à partir des Workflows et des Schedules. Donc par exemple, si la Tâche
dans laquelle le script "SYS_USER_LNAME" est exécuté est une partie d'un Schedule, la fonction de
script indique le nom de l'Utilisateur qui a démarré le Schedule.
Der Benutzer ist auch in der Statistikübersicht erkennbar.
Exemple
Dans l'exemple, le nom et le prénom déterminés par la fonction de script sont écrits dans le protocole
d'activation à partir de la connexion.
:SET &LOGLN# = SYS_USER_LNAME()
:PRINT "Informations de connexion : Nom et prénom de l'Utilisateur :
&LOGLN#."
Rubriques connexes :
Elément de script
Description
SYS_USER_ALIVE
Vérifie si l'Utilisateur est connecté à UC4 par une Interface Utilisateur.
SYS_USER_DEP
Indique le département de l'Utilisateur qui a démarré la Tâche.
SYS_USER_LANGUAGE
Indique la langue dans laquelle le Serveur génère les fichiers log.
SYS_USER_NAME
Indique le nom de l'Utilisateur qui a démarré la Tâche.
Scripts - Données Utilisateur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.8.7 SYS_USER_NAME
Fonction script : Indique le nom de l'Utilisateur qui a démarré la Tâche.
255
256
Chapter 3 Organisation fonctionnelle
Syntaxe
SYS_USER_NAME()
Code retour
Nom de l'Utilisateur.
Remarques
La fonction de script détermine le nom de l'Utilisateur (ex: "MEIER" pour "MEIER/UC4") qui a démarré la
Tâche.
Attention : les Tâches peuvent être démarrées aussi bien manuellement que par l'élément de script
"ACTIVATE_UC_OBJECT", à partir des Workflows et des Schedules. Donc par exemple, si la Tâche
dans laquelle le script "SYS_USER_NAME" est exécuté est une partie d'un Schedule, la fonction de
script indique le nom de l'Utilisateur qui a démarré le Schedule.
Der Benutzer ist auch in der Statistikübersicht erkennbar.
Exemple
Dans l'exemple, le nom déterminé par la fonction de script est écrit dans le protocole d'activation à partir
de la connexion.
:SET &LOGN# = SYS_USER_NAME()
:PRINT "Informations de connexion : Nom de l'Utilisateur : &LOGN#."
Rubriques connexes :
Elément de script
Description
SYS_USER_ALIVE
Vérifie si l'Utilisateur est connecté à UC4 par une Interface Utilisateur.
SYS_USER_DEP
Indique le département de l'Utilisateur qui a démarré la Tâche.
SYS_USER_LANGUAGE
Indique la langue dans laquelle le Serveur génère les fichiers log.
SYS_USER_LNAME
Indique le nom et le prénom de l'Utilisateur qui a démarré la Tâche.
Scripts - Données Utilisateur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.9 Séquences de données
3.9.1 :CLOSE_PROCESS
Instruction de script : Supprime une séquence de données au sein d'un script.
Automation Engine
257
Syntaxe
:CLOSE_PROCESS Référence Séquence de données
Elément de syntaxe
Description/format
Référence Séquence
de données
Variable de Script contenant une référence séquence de données.
Format : Variable de Script
Remarques
L'instruction de Script :CLOSE_PROCESS supprime une séquence de données qui n'est plus nécessaire.
En particulier, le traitement imbriqué de séquences de données est mis à jour dans une mémoire de travail
de Script.
Les séquences de données sont préparées à partir des Scripts suivants :
l
l
l
l
l
l
l
PREP_PROCESS
PREP_PROCESS_AGENTGROUP
PREP_PROCESS_COMMENTS
PREP_PROCESS_FILE
PREP_PROCESS_FILENAME
PREP_PROCESS_REPORT
PREP_PROCESS_VAR
Aucune autre valeur ne peut être attribuée aux Variables de Script qui contiennent une référence à une
séquence de données. Elles ne peuvent être réutilisées que lorsque vous libérez l'instruction :CLOSE_
PROCESS.
Après exécution de :CLOSE_PROCESS, la Variable ne contient aucune valeur.
Exemple
Dans l'exemple, supprime la séquence de données dont la référence est enregistrée dans les Variables de
Script "&HND#".
:CLOSE_PROCESS &HND#
Rubriques connexes :
Elément de script - Séquences de données
Exemples
Définition du statut final en fonction du contenu du rapport
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.9.2 :PROCESS... :TERM_PROCESS... :ENDPROCESS
Instructions de script : définition d'une boucle pour le traitement par ligne d'une séquence de données.
258
Chapter 3 Organisation fonctionnelle
Syntaxe
:PROCESSRéférence Séquence de données
[Instructions]
:TERM_PROCESS
:ENDPROCESS
Elément de syntaxe
Description/format
:PROCESS
Début de la boucle de processus
Référence Séquence
de données
Référence de la séquence de données à traiter.
Format : Variable de script
Instructions
Une ou plusieurs instructions qui sont exécutées lors de chaque cycle de la
boucle.
Format : Instruction de script
:TERM_PROCESS
Instruction pour quitter la boucle de processus.
:ENDPROCESS
Fin de la boucle de processus.
Remarques
Les instructions de Script :PROCESS et :ENDPROCESS permettent un traitement par ligne de la
séquence de données. Les séquences sont préparées à partir des Scripts suivants :
l
l
l
l
l
l
l
PREP_PROCESS
PREP_PROCESS_AGENTGROUP
PREP_PROCESS_COMMENTS
PREP_PROCESS_FILE
PREP_PROCESS_FILENAME
PREP_PROCESS_REPORT
PREP_PROCESS_VAR
A chaque cycle de la boucle, une nouvelle ligne de la séquence de données est lue. Cette opération se
répète jusqu'à la fin de la ligne et la fermeture explicite de la boucle avec :TERM_PROCESS.
La fonction de Script GET_PROCESS_LINE permet de communiquer le contenu de la ligne.
Une séquence de données vide ne provoque pas de message d'erreur. Le traitement défini entre
:PROCESS et :ENDPROCESS, n'est tout simplement pas lancé.
Exemple
Dans l'exemple suivant, les répertoires d'un lecteur sont déterminés et s'affichent dans une boucle de
processus avec l'instruction :PRINT dans le protocole d'activation.
:SET &HND# = PREP_PROCESS("PC01","WINCMD","*DIR*","CMD=DIR C:")
:PROCESS &HND#
: SET &LIGNE# = GET_PROCESS_LINE(&HND#)
: PRINT&LIGNE#
:ENDPROCESS
Rubriques connexes :
Automation Engine
259
Elément de script - Séquences de données
Exemples
Définition du statut final en fonction du contenu du rapport
Exécution d'un MBean
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.9.3 GET_PROCESS_LINE
Fonction script : Détermine le contenu actuel des lignes d'une séquence de données.
Syntaxe
GET_PROCESS_LINE(Référence Séquence de données [, [Colonne] [, [STR_SUBSTITUTE_
VAR] [, Ligne ] ] ] )
GET_PROCESS_LINE(Référence Séquence de données [, [Colonne] [, [STR_SUB] [, Ligne ] ]
)
Elément de syntaxe
Description/format
Référence Séquence
de données
Référence de la séquence de données à traiter.
Format : Variable de script
Colonne
Accès à une colonne de la ligne de séquence de données.
l
l
Séquence de données dont les lignes ont été réparties en colonnes.
Format : Nombre sans guillemets, littéral de script ou Variable de
script
Valeurs autorisées : "1" à "22" ou nom de colonne
Séquence de données d'une Variable UC4
Format : Nombre sans guillemets ou Variable de script
Valeurs autorisées : "1", "2" jusqu'à n
"1" = Clef ou Colonne Résultat. Colonne de valeurs des objets
Variable de type "Liste de fichiers".
"2" - "6" = Colonnes de valeurs des objets Variable statique
"2" bis n = Nombre de colonnes de valeurs des objets Variable.
Les Variables dynamiques (SQL, SQLI et Multi) peuvent contenir
de nombreuses colonnes. Cela dépend de la source de données
respective.
Les Variables statiques ne comportent que 5 colonnes de valeurs (de
"2" à "6").
Les Variables FILELIST comportent généralement une seule colonne
qui est précisée par "1".
l
Séquence de données d'un commentaire
Format : Nombre sans guillemets ou Variable de script
Valeurs autorisées : "1", "2" et "3"
"1" = Horodatage
"2" = Nom de l'Utilisateur
"3" = Texte des commentaires
260
Chapter 3 Organisation fonctionnelle
STR_SUBSTITUTE_
VAR
STR_SUB_VAR
En outre, il faut rechercher les Variables de script contenues dans les lignes
de la séquence de données et les remplacer par leurs valeurs
correspondantes.
Lorsque vous utilisez ce paramètre sans indiquer de colonne, il faut tout de
même indiquer la virgule. Exemple :
:SET &VALEUR# = GET_PROCESS_LINE(&HND#, ,STR_SUB_VAR)
Ligne
Ligne de la séquence de données à laquelle il faut accéder.
Format : numéro sans guillemets, littéral de script ou Variable de script
Remarques
La fonction de script GET_PROCESS_LINE lit une ligne ou les colonnes d'une séquence de données. La
séquence est préparée à partir des scripts suivants :
l
l
l
l
l
l
l
l
l
CREATE_PROCESS
LOAD_PROCESS
PREP_PROCESS
PREP_PROCESS_AGENTGROUP
PREP_PROCESS_COMMENTS
PREP_PROCESS_FILE
PREP_PROCESS_FILENAME
PREP_PROCESS_REPORT
PREP_PROCESS_VAR
La fonction de script GET_PROCESS_LINE est utilisée dans les instructions de script :PROCESS et
:ENDPROCESS, qui forment une boucle pour le traitement de la séquence de données et qui rendent
disponible une nouvelle ligne de la séquence de données à chaque cycle de la boucle.
Toutes les lignes d'une séquence de données peuvent également être réparties en colonnes. Cela est
défini à l'aide des paramètres COL=LENGTH et COL=DELIMITER lors de la création de la séquence de
données. L'accès à chaque colonne se fait par son numéro (1 - première colonne) ou par le nom de la
colonne, s'il a été défini.
Si vous n'indiquez pas de colonne ni n'utilisez "0", toutes les lignes sont retournées et donc toutes les
colonnes.
Lorsque les valeurs d'un objet Variable sont déterminées, la ligne actuelle contient la clef (Variable
statique) ou la colonne de résultat (Variable dynamique) ainsi que les valeurs respectives. La valeur "1"
pour Colonne est la clef/résultat, les valeurs "2" à "6" (Variables statiques) représentent la lecture de la
colonne de valeurs respective. Si aucun format de résultat n'est défini dans l'objet Variable (SQL, SQLI,
MULTI), alors la colonne Résultat correspond à la première colonne de valeur.
Le nombre de colonnes de valeurs de Variables dynamiques possédant la source SQL, "SQL - interne" ou
"Multi" n'est pas limité et est précisé selon les paramètres de l'objet Variable ou de la source de données.
Les colonnes de commentaires peuvent également être appelées de cette manière.
Si le numéro de colonne n'est pas indiqué lors de la séquence de données des objets Variable, la valeur
de toutes les colonnes (y compris clef/résultat) sera retournée en étant séparée par le caractère "§§§".
Un procédé particulier permet d'accéder aux moniteurs SAP. L'Agent SAP répartit les diverses lignes
fournies par le moniteur SAP dans des colonnes fixes. Il enregistre le nom et la largeur des colonnes sous
la forme d'une ligne d'en-tête dans le fichier qui doit être traité par le UC4 Automation Engine. GET_
PROCESS_LINE vous permet d'accéder aux colonnes suivantes :
Automation Engine
l
l
l
l
l
l
l
261
CONTEXT - Nom du contexte du moniteur
PATH : chemin de la valeur,
NAME - Nom de la valeur,
VALUE : valeur actuelle,
STATUT - Statut : 1 = vert, 2 = jaune, 3 = rouge,
DATE - Date de la vérification
TIME - Heure de la vérification.
Vous pouvez indiquer en plus le paramètre STR_SUBSTITUTE_VAR pour lequel la forme abrégée STR_
SUB_VAR est valide. Cela a pour effet de rechercher les Variables de script contenues dans les lignes et
de les remplacer par leurs valeurs correspondantes. La fonction liée à PREP_PROCESS_FILE est
particulièrement utile. Préparez, dans un fichier, un texte contenant des Variables de script modifiables
pour faciliter ensuite le traitement du texte. Quelle que soit la source dont provient la séquence de données
(fichier, rapport, objet Variable, ...), les valeurs elles-mêmes sont définies dans le script (voir l'exemple 5
ci-dessous).
L'accès à une ligne spécifique de la séquence de données est par ailleurs possible. Veuillez indiquer à cet
effet le numéro de la ligne dans le paramètre correspondant de la fonction script. La première ligne possède
le numéro 1. Les numéros de ligne des séquences de données peuvent également être déterminés avec
l'élément de script GET_PROCESS_INFO.
Attention : par défaut la fonction de script GET_PROCESS_LINE tronque les espaces compris à la fin
des lignes lues. L'administrateur UC4 peut cependant désactiver ce comportement à l'aide du paramètre
GET_PROCESS_LINE_RTRIM de la Variable UC4 UC_SYSTEM_SETTINGS.
Exemples
Dans le premier exemple, les répertoires d'un lecteur sont déterminés et s'affichent dans une boucle de
processus avec l'instruction :PRINT dans le protocole d'activation.
:SET &HND# = PREP_PROCESS("PC01","WINCMD","*DIR*","CMD=DIR C:")
:PROCESS &HND#
:
SET &LIGNE# = GET_PROCESS_LINE(&HND#)
:
PRINT &LIGNE#
:ENDPROCESS
Dans le deuxième exemple, les valeurs d'une Variable UC4 sont déterminées et s'affichent dans une
boucle de processus avec l'instruction :PRINT dans le protocole d'activation.
: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
Le troisième exemple lit toutes les lignes d'un fichier log de l'Interface Utilisateur qui retournent les
informations par la base de données. La largeur et le nom des colonnes sont ainsi spécifiés. Les
informations concernées s'affichent dans le protocole d'activation. Les espaces (colonnes 2 et 4) sont
ignorés.
:SET &HND# = PREP_PROCESS_FILE(WIN21, "F:\UC4\DIALOG\TEMP\UCDJ_LOGG_
01.TXT","*DB-INFO*","COL=LENGTH","LENGTH_
TAB='8=DATE,1,6=HEURE,7,200=TEXTE'")
:PROCESS &HND#
:
SET &COL1# = GET_PROCESS_LINE(&HND#,1)
:
SET &COL2# = GET_PROCESS_LINE(&HND#,3)
:
SET &COL3# = GET_PROCESS_LINE(&HND#,"TEXT")
262
Chapter 3 Organisation fonctionnelle
:
PRINT "&COL1# &COL2# &COL3#"
:ENDPROCESS
Le quatrième exemple lit le moniteur SAP "MON1" dans l'ensemble de moniteurs "UC4". Il faut accéder à
toutes les colonnes des données du moniteur. Les lignes de la séquence de données s'affichent dans le
protocole d'activation.
:SET &HND# = PREP_PROCESS
("T01","R3MONITOR","*","MONSET=UC4","MONNAM=MON1","COL=FILE","UC_USER_
ID=UC4","UC_SAPMANDANT=001")
:PROCESS &HND#
:
SET &CHEMIN# = GET_PROCESS_LINE(&HND#,"CHEMIN")
:
SET &NOM# = GET_PROCESS_LINE(&HND#,"NOM")
:
SET &VALEUR# = GET_PROCESS_LINE(&HND#,"VALEUR")
:
SET &STATUT# = GET_PROCESS_LINE(&HND#,"STATUT")
:
SET &DATE# = GET_PROCESS_LINE(&HND#,"DATE")
:
SET &TIME# = GET_PROCESS_LINE(&HND#,"TIME")
:
PRINT "&CHEMIN# &NOM# &VALEUR# &STATUT# &DATE# &HEURE#"
:ENDPROCESS
Définition de la largeur et du nom des colonnes du fichier (ligne d'en-tête) préparé par l'Agent SAP.
COL=LENGTH,LENGTH_TAB='74=PATH,25=NAME,5=VALUE,2=STATUS,9=DATE,7=TIME'
Dans le cinquième exemple, les lignes d'un fichier texte sont lues pour remplacer ensuite par leurs valeurs
les Variables de scripts qui s'y trouvent et afficher les lignes modifiées dans le protocole d'activation.
:SET &NOM# = SYS_ACT_ME_NAME()
:SET &DATE# = SYS_DATE_PHYSICAL("MM/JJ/AAAA")
:SET &HEURE# = SYS_TIME_PHYSICAL("HH:MM")
:SET &JPNOM# = SYS_ACT_JPNAME()
:SET &HND# = PREP_PROCESS_FILE ("WIN01","C:\UC4\REPORT.TXT")
:PROCESS &HND#
: SET &RET# = GET_PROCESS_LINE (&HND#,,STR_SUB_VAR)
: PRINT &RET#
:ENDPROCESS
Extrait du fichier texte REPORT.TXT prédéfini :
&DATE#/&HEURE#
Rapport pour &NOM#:
Activé par ProcessFlow : &JPNAME#
Rubriques connexes :
Elément de script - Séquences de données
Exemples
Définition du statut final en fonction du contenu du rapport
Exécution d'un MBean
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
Automation Engine
263
3.9.4 PREP_PROCESS
Fonction script : Exécute avec l'aide d'objets Job spécifiques (Jobs d'Evènement) des commandes sur
un ordinateur et fournit la sortie de console comme liste interne (séquence de données) qui peut être
utilisée pour des traitements ultérieurs.
Syntaxe
PREP_PROCESS(Hôte, Job d'Evènement, [Filtre],Action[, Séparation des colonnes]...
[, UC_LOGIN=Objet Login])
Elément de
syntaxe
Description/format
Hôte
Machine (nom de l'Agent) sur laquelle le Job d'Evènement est exécuté.
Format : Littéral de script ou Variable de script
Job d'Evènement
Partie du nom du Job d'Evènement devant être exécutée.
Format: Littéral de script ou Variable de script
Filtre
Valeur par défaut pour le contenu des lignes. La casse des caractères n'est pas
prise en compte.
Format : littéral de script ou Variable de script
Valeur par défaut : "*"
Action
Attribution de valeur pour une Variable de script du Job d'Evènement.
Format : littéral de script ou Variable de script
Valeur par défaut : ""
L'attribution de valeur possède sa propre syntaxe : Variable=Attribution
Variable- nom de la Variable de script tirée du Job d'Evènement qui effectue
l'attribution. L'indication est faite sans le signe "&" habituel dans les Variables de
script.
Attribution- valeur de la Variable de script. Action prioritaire (exécution de
commande, de programme ou de données) devant être exécutée dans le
système cible et attribution de valeur supplémentaire (variables du dialogue des
attributs).
Pour l'interrogation du système de fichiers UNIX, une syntaxe spéciale est
applicable.
264
Chapter 3 Organisation fonctionnelle
Séparation des
colonnes
Il est également possible de définir que les lignes de la séquence de données
doivent être réparties en colonnes. Le format suivant s'applique :
COL=Definition1[, Definition2].
Format : Littéral de script ou Variable de script
Definition1:
Valeurs autorisées : "NONE" (Valeur par défaut), "FILE", "LENGTH",
"DELIMITER"
"NONE" = Aucune répartition en colonnes.
"FILE" = Utilisation des définitions de colonnes dans les premières lignes du
fichier que l'Agent crée lorsque des Jobs d'Evènements, qui exécutent le script
AP-JCL R3_GET_MONITOR démarrent (Pour "R3MONITOR" le Job
Evènement prédéfini "EVENT.R3MONITOR" du Client système est utilisé pour
le paramètre Job d'Evènement ).
"LENGTH" = Largeurs de colonnes prédéfinies. Nécessite LENGTH_TAB=
comme Definition2.
"DELIMITER" = Les colonnes sont séparées par un délimiteur. Nécessite
DELIMITER= comme Definition2.
Definition2:
Définit la largeur et le nom des colonnes (facultatif) ou le caractère de séparation.
Format : Littéral de script ou Variable de script
Valeurs autorisées : "LENGTH_TAB" et "DELIMITER"
l
"LENGTH_TAB"
La largeur et le nom des colonnes (facultatif) sont indiqués sous la forme
suivante : largeur de colonne=[nom de colonne]. La largeur de colonne est
définie par un nombre de caractères. Les définitions de colonnes doivent
être séparées par des virgules (22 colonnes maximum). Des virgules
supplémentaires doivent apparaître avant la première et après la dernière
définition de colonne. Si des doubles guillemets servent de littéral de
script pour la Definition2, les guillemets doivent dans le cas contraire être
simples.
Exemple :
"COL=LENGTH,LENGTH_
TAB='10=Département,25=Responsable,10=Budget'"
l
"DELIMITER"
La séparation des colonnes par des caractères est indiquée comme suit
*Délimiteur*.
"*" = caractère de séparation libre. Les caractères de séparation servent
uniquement à la commande du Delimiter et n'apparaissent pas lors de
l'affichage final.
Delimiter = Chaîne de caractères de 10 caractères maximum qui sépare
les colonnes. Les caractères d'une ligne sont renvoyés comme colonnes
qui se trouvent avant, entre ou après la chaîne de caractères Delimiter.
Lorsque le Delimiter n'est pas présent dans une ligne, aucune séparation
des colonnes n'est possible. Si un seul guillemet sert de Délimiteur, la
Definition2 doit être entre guillemets doubles et inversement.
Valeur par défaut : point-virgule (;)
Exemple :
Automation Engine
UC_LOGIN
265
Nom d'un objet Login.
Format : Littéral de script ou Variable de script
Attention : la fonction de script nécessite des données de connexion. Si vous
n'indiquez pas le paramètre UC_LOGIN, le Job d'Evènement correspondant doit
contenir des informations de connexion valides.
Code retour
Référence sur la séquence de données de la commande.
Remarques
Par exemple, la fonction de script PREP_PROCESS_FILE génère une séquence de données, avec ces
données :
l
l
l
l
commandes du système d'exploitation dans BS2000, MPE, UNIX, VMS et Windows,
commandes de console BS2000^,
interrogations du système de fichiers UNIX,
moniteurs SAP, log système SAP et Jobs SAP
Pour exécuter une commande de console BS2000 et pour interroger le système de fichiers UNIX, les
programmes d'aide UC4 (UCYEBXXZ ou UCXE???F) doivent être installés.
Les consoles et les commandes du système d'exploitation s'exécutent avec l'aide de Jobs d'Evènements,
qui sont démarrés en arrière-plan sur l'ordinateur des Agents indiqués (Hôte). Les lignes Evènements
d'une commande sont disponibles sous la forme d'une liste interne (Séquence de données) pour la valeur
de retour de la fonction script.
Les jobs d'Evènement possèdent le nom "EVENT.job d'Evènement". Par exemple, "EVENT." est un
composant clairement défini du nom du Job, tandis que le "Job d'Evènement" peut être défini librement. La
définition de ce type de Job d'Evènement est convertie en fonction de certains attributs et de l'élaboration
générale des scripts.
Les Jobs d'Evènement prédéfinis sont fournis dans le Client système 0000 (Dossier: PREP_PROCESS).
Ils peuvent être utilisés directement ou en tant que modèles dans votre propre Client. Le contenu des Jobs
d'Evènement peut être adapté suivant les besoins. Attention : vous devez modifier le déroulement du
script dans EVENT.UNIXCMD si vous ne voulez pas que le rapport soit supprimé dans le cas où un code
retour est supérieur à 0.
Pour le traitement de la séquence de données préparée par PREP_PROCESS, les étapes internes
suivantes s'exécutent:
1. Le job d'Evènement, défini avec les paramètre Job d'Evènement est activé (nom de Job:
EVENT.Job d'Evènement).
2. Le Job d'Evènement est exécuté sur l'hôte et effectue une action indiquée dans le paramètre
action. Celui-ci renvoie le résultat de l'action ligne par ligne dans une séquence de données.
3. Seules les lignes dont le contenu correspond au paramètre Filtre sont prises en compte. L'utilisation
de ce paramètre est facultative.
4. N'importe quelle attribution de valeurs peut être indiquée comme paramètre action.
Pour les commandes du système d'exploitation dans BS2000, MPE, UNIX, VMS et Windows
ainsi que pour la commande de console BS2000, la variable est fournie en priorité avec la Variable
de script "&CMD". Mais il est également possible d'attribuer des valeurs aux Variables de script
disponibles dans le cadre du dialogue des attributs. Au début du Job d'Evènement et suivant le J
ob d'Evènement l'objet Include correspondant est traité et fourni en interne dans le script sans que
266
Chapter 3 Organisation fonctionnelle
le dialogue des attributs ne s'affiche. La requête sur les systèmes de fichiers UNIX utilise une
Syntaxe spéciale pour les actions.
5. La séquence de données créées sur l'Hôte est transférée pour traitement par Transfert de fichier au
UC4 Automation Engine. Le nom du fichier par défaut transféré par l'hôte au UC4 Automation
Engine est "ERRRRRRR.TXT". Les caractères de remplacement suivants peuvent être utilisés
pour les parties variables :
l
l
E - Evènement
RRRRRRR - Numéro courant (RunID) de la Tâche
Attention : le RunID ne doit pas être représenté sous la forme d'un nombre, mais en tant que
chaîne de caractères convertie (voir RUNNR2ALPHA).
Par défaut, la fonction de script lit une ligne complète. Vous pouvez également y accéder de manière
structurée lorsque les lignes sont réparties en colonnes. Pour ce faire, les définitions suivantes
s'appliquent :
l
l
l
22 colonnes maximum d'une longueur totale de 2 048 octets,
Largeur de colonne maximale de 255 caractères et
nom de colonne de 32 caractères maximum.
GET_PROCESS_LINE vous permet d'accéder à chaque colonne.
Le code retour de la fonction de script est la référence de la séquence de données. Cette dernière est
transmise en tant que paramètre de démarrage aux instructions de script :PROCESS et :ENDPROCESS.
Grâce à l'utilisation conjointe de la fonction de script GET_PROCESS_LINE, vous pouvez traiter chaque
ligne et les colonnes correspondantes, de la séquence de données.
Si la séquence de données 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. La Variable ne peut être réutilisée que lorsque vous supprimez explicitement la séquence de
données avec l'instruction de script :CLOSE_PROCESS.
Le script permet d'ouvrir les Transactions ouvertes dans la base de données UC4.
L'élément de script ne peut être utilisé pour les hôtes z/OS et OS400 :
Exemples
Dans le premier exemple, une commande "/STA P" est posée sur la machine BS2000 "C70". L'extension
nécessaire et le compte sont lus dans l'objet Login.
:SET &TRAIT# = PREP_PROCESS("C70","BS2000CMD",,"CMD=/STA P","UC_
LOGIN=UC4ADMIN")
Cet exemple pose dans la console BS2000 une commande pour afficher toutes les applications ouvertes.
Aucun Filtre n'est indiqué pour le contenu des lignes.
:SET &TRAIT# = PREP_PROCESS("C70","BS2000UCON",,"CMD=/BCDISP DISP=O","UC_
LOGIN=UC4ADMIN")
Le troisième exemple détermine les répertoires d'un lecteur sur la machine Windows "WIN23".
:SET &TRAIT# = PREP_PROCESS("WIN23","WINCMD","*DIR*","CMD=DIR C:","UC_
LOGIN=UC4ADMIN")
Automation Engine
267
Le quatrième exemple lit le moniteur SAP "MON1" dans l'ensemble de moniteurs "UC4". Il faut accéder à
toutes les colonnes des données du moniteur définies dans le fichier. L'Utilisateur et le Client SAP sont lus
à partir de l'objet Login indiqué.
:SET &HND# = PREP_PROCESS
("T46","R3MONITOR","*","MONSET=UC4","MONNAM=MON1","COL=FILE","UC_
LOGIN=UC4ADMIN")
Rubriques connexes :
Elément de script
Description
:CLOSE_PROCESS
Supprime une séquence de données au sein d'un script.
:PROCESS... :TERM_
PROCESS...
:ENDPROCESS
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.
GET_PROCESS_LINE
Détermine le contenu actuel des lignes d'une séquence de données.
Elément de script - Séquences de données
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.9.5 PREP_PROCESS_AGENTGROUP
Fonction script : Détermine les Agents d'un objet Groupe Agent grâce à des critères de sélection et met
le résultat à disposition comme liste interne (séquence de données) pour un traitement ultérieur.
Syntaxe
PREP_PROCESS_AGENTGROUP(Groupe Agent [, hôte] [, option de sélection] [, RunID])
Elément de syntaxe
Description/format
Groupe Agent
Nom de l'objet Groupe Agent dont les Agents doivent être lus.
Format : Nom UC4, Littéral de script ou Variable de script
Hôte
Filtre pour le nom d'Agent
Format : littéral de script ou Variable de script
32 caractères maximum
Valeur par défaut : "*"
Les caractères génériques "*" et "?" sont autorisés. "*" signifie n'importe
quelle chaîne de caractères et "?" exactement un caractère.
268
Chapter 3 Organisation fonctionnelle
Option de sélection
Méthode selon laquelle les Agents du Groupe Agent doivent être déterminés.
Format : nom UC4, littéral de script ou Variable de script
Valeurs autorisées : "BY_RULE" (valeur par défaut), "ALL" et "RUNNR"
"BY_RULE" - la fonction script renvoie l'Agent sur lequel sera exécutée la
prochaine Tâche selon le mode du Groupe Agent.
"ALL" - tous les Agents du Groupe Agent sont déterminés
"RUNNR" - Le ou les Agents déterminés dépendent d'une Tâche concrète. Le
RunID du conteneur de Groupes Agents de cette dernière est indiqué dans le
paramètre de même nom.
Avec les Groupes Agents définis sur le mode "Tous", les options "BY_
RULE" et "ALL" renvoient les mêmes résultats.
RunID
Numéro courant (RunID) du conteneur de Groupes Agents.
Format : littéral de script, Variable de script ou chiffre
Si vous utilisez ce paramètre, le Script indique le ou les Agents sur lesquels la
Tâche est exécutée.
Vous ne devez préciser ce paramètre que si vous avez choisi l'option de
sélection RUNNR.
Code retour
Référence à la séquence de données de l'objet Groupe Agent.
Remarques
La fonction script lit les Agents d'un objet Groupe Agent. Pour ce faire, les Agents lus peuvent être limités
via des paramètres facultatifs. La référence à l'ensemble de la séquence de données est fournie par
défaut.
Le code retour de la fonction script est la référence d'une séquence de données. Cette dernière est
transmise en tant que paramètre de démarrage aux instructions de script :PROCESS et :ENDPROCESS.
Grâce à l'utilisation conjointe de la fonction script GET_PROCESS_LINE, vous accédez à toutes les
lignes de la séquence de données. Celle-ci est divisée en deux colonnes que vous pouvez également lire
de manière ciblée :
1. Nom de l'Agent
2. Statut de l'Agent ("Y" - L'Agent est actif ; "N" - L'Agent est inactif)
Le statut est surtout important pour les Groupes Agents définis sur le mode "Tous". Pour ces Groupes
Agents, la fonction script renvoie toujours tous les Agents sans vérifier s'ils sont actifs ou non. Grâce aux
informations de statut, vous pouvez déterminer les Agents sur lesquels des Tâches peuvent réellement
être exécutées.
Même si vous ne souhaitez appliquer un filtre que sur la sélection et/ou sur le RunID, vous devez
conserver les virgules précédentes.
Aucune autre valeur ne peut être attribuée à la Variable de script contenant la référence de la séquence de
données. La Variable ne peut être réutilisée que lorsque vous supprimez explicitement la séquence de
données avec l'instruction de script :CLOSE_PROCESS.
Automation Engine
269
Exemple
Le Script du premier exemple détermine tous les Agents d'un Groupe Agent dont le nom commence par
"WIN".
:SET &HND# = PREP_PROCESS_AGENTGROUP("GROUPE AGENT_WINDOWS","WIN*",ALL)
:PROCESS &HND#
:
SET &AGENT# = GET_PROCESS_LINE(&HND#,1)
:
SET &STATUS# = GET_PROCESS_LINE(&HND#,2)
:
PRINT "Agent: &AGENT#"
:
PRINT "Status: &STATUS#"
:ENDPROCESS
:CLOSE_PROCESS &HND#
Dans l'exemple suivant, une Tâche est reprise. La fonction script SYS_ACT_ME_NR renvoie dans ce cas
le RunID de l'exécution initiale qui permet de déterminer le RunID du conteneur de Groupes Agents. Les
Agents sur lesquels la Tâche a été exécutée à l'origine peuvent ainsi être lus.
:SET &A_RUNNR# = SYS_ACT_ME_NR()
:SET &P_RUNNR# = GET_PARENT_NR(&A_RUNNR#)
:SET &HND# = PREP_PROCESS_AGENTGROUP("GROUPE AGENT_DB",,RUNNR,&P_RUNNR#)
:PROCESS &HND#
:
SET &AGENT# = GET_PROCESS_LINE(&HND#,1)
:
SET &STATUS# = GET_PROCESS_LINE(&HND#,2)
:
PRINT "Agent: &AGENT#"
:
PRINT "Status: &STATUS#"
:ENDPROCESS
:CLOSE_PROCESS &HND#
Rubriques connexes :
Elément de script
Description
:CLOSE_PROCESS
Supprime une séquence de données au sein d'un script.
:PROCESS... :TERM_
PROCESS...
:ENDPROCESS
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.
GET_PROCESS_LINE
Détermine le contenu actuel des lignes d'une séquence de données.
Elément de script - Séquences de données
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.9.6 PREP_PROCESS_COMMENTS
Fonction script : Détermine les paramètres de Filtre de l'Marque horaire, de l'Utilisateur et du Texte des
commentaires de Tâches et met le résultat à disposition comme liste interne (séquence de données)
pour un traitement ultérieur.
270
Chapter 3 Organisation fonctionnelle
Syntaxe
PREP_PROCESS_COMMENTS([RunID] [,texte] [, Utilisateur])
Elément de syntaxe
Description/format
RunID
Numéro courant (RunID) de la Tâche dont les commentaires doivent être lus.
Format : Littéral de script, Variable de script, chiffre
Si vous n'indiquez aucun RunID, les commentaires de la Tâche qui exécute
l'instruction de Script sont lus.
Texte
Filtre permettant de rechercher une expression dans le texte des
commentaires
Format : littéral de script ou Variable de script
200 caractères maximum
Valeur par défaut : "*"
Les caractères génériques "*" et "?" sont autorisés. "*" signifie n'importe
quelle chaîne de caractères et "?" exactement un caractère.
Utilisateur
Filtre permettant de rechercher le nom d'un objet Utilisateur
Format : littéral de script ou Variable de script
200 caractères maximum
Valeur par défaut : "*"
Les caractères génériques "*" et "?" sont autorisés. "*" signifie n'importe
quelle chaîne de caractères et "?" exactement un caractère.
Même si vous ne souhaitez appliquer un Filtre que sur le nom d'utilisateur,
vous devez conserver la première virgule. Exemple :
:SET &HND# = PREP_PROCESS_COMMENTS(,,"DUPONT/UC4")
Code retour
Référence sur la séquence de données des commentaires.
Remarques
La fonction script lit les commentaires d'une Tâche. Vous pouvez limiter les résultats à l'aide des
paramètres Texte et Utilisateur.
Le filtrage tient compte de la casse des données entrées.
Attention : indiquer une chaîne vide "" pour le filtrage équivaut à entrer "*" : toutes les valeurs sont alors
renvoyées.
Le code retour de la fonction script est la référence d'une séquence de données. Cette dernière est
transmise en tant que paramètre de démarrage aux instructions de script :PROCESS et :ENDPROCESS.
Grâce à l'utilisation conjointe de la fonction script GET_PROCESS_LINE , vous accédez à tous les
commentaires de la Tâche.
Si le commentaire ne contient pas les valeurs recherchées, 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é.
Automation Engine
271
Aucune autre valeur ne peut être attribuée à la Variable de script contenant la référence de la séquence de
données. La Variable ne peut être réutilisée que lorsque vous supprimez explicitement la séquence de
données avec l'instruction de script :CLOSE_PROCESS.
Exemples
Les commentaires suivants sont fournis :
Le premier exemple prend en compte tous les commentaires et affiche l'Utilisateur et le texte avec
l'instruction :PRINT.
:SET &HND# = PREP_PROCESS_COMMENTS()
:PROCESS &HND#
:
SET &UTILISATEUR# = GET_PROCESS_LINE(&HND#,2)
:
SET &TEXTE# = GET_PROCESS_LINE(&HND#,3)
:
PRINT "&UTILISATEUR#: &TEXTE#"
:ENDPROCESS
:CLOSE_PROCESS &HND#
Dans le deuxième exemple, seules les entrées de Monsieur Dupont sont lues et indiquées avec un
horodatage.
:SET &HND# = PREP_PROCESS_COMMENTS(,,"DUPONT/UC4")
:PROCESS &HND#
:
SET &HEURE# = GET_PROCESS_LINE(&HND#,1)
:
SET &TEXTE# = GET_PROCESS_LINE(&HND#,3)
:
PRINT "&HEURE#: &TEXTE#"
:ENDPROCESS
:CLOSE_PROCESS &HND#
272
Chapter 3 Organisation fonctionnelle
Dans le troisième exemple, la fonction script a été exécutée à partir d'une autre Tâche. Le RunID
correspondant est donc utilisé. Tous les commentaires qui contiennent le mot "fichier" sont renvoyés.
:SET &RUNID# = GET_UC_OBJECT_NR(GS.OBTENIR.FICHIERS)
:SET &HND# = PREP_PROCESS_COMMENTS(&RUNID#,"*fichier*")
:PROCESS &HND#
:
SET &TEXTE# = GET_PROCESS_LINE(&HND#,3)
:
PRINT "commentaire : &TEXTE#"
:ENDPROCESS
:CLOSE_PROCESS &HND#
Rubriques connexes :
Elément de script
Description
:ADD_COMMENT
Ajout d'un commentaire à une Tâche.
:CLOSE_PROCESS
Supprime une séquence de données au sein d'un script.
:PROCESS... :TERM_
PROCESS...
:ENDPROCESS
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.
GET_PROCESS_LINE
Détermine le contenu actuel des lignes d'une séquence de données.
Elément de script - Séquences de données
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.9.7 PREP_PROCESS_FILE
Fonction script : Détermine grâce aux critères de filtrage par ligne le contenu d'un fichier texte qui se
trouve sur un ordinateur indiqué et met le résultat à disposition comme liste interne (séquence de
données) pour un traitement ultérieur.
Syntaxe
PREP_PROCESS_FILE(Hôte, Fichier,[ Filtre][, COL=Definition1[, Definition2]][, UC_LOGIN=Objet
Login])
Elément de syntaxe
Description/format
Hôte
Machine (nom de l'Agent) sur laquelle se trouve le fichier.
Format : Littéral de script ou Variable de script
Fichier
Nom du fichier texte, avec son chemin complet, devant être lu.
Format : Littéral de script ou Variable de script
Vous pouvez déterminer le nom d'un fichier appartenant à un Generation
Data Group à l'aide de la fonction de script GET_FILESYSTEM.
Automation Engine
Filtre
273
Valeur par défaut pour le contenu des lignes. La casse des caractères n'est
pas prise en compte.
Format : littéral de script ou Variable de script
Valeur par défaut : "*"
Les caractères génériques "*" et "?" sont autorisés. "*" signifie n'importe
quelle chaîne de caractères et "?" exactement un caractère.
Definition1
Définit si les lignes doivent être réparties en colonnes.
Format : Littéral de script ou Variable de script
Valeurs autorisées : "NONE" (Valeur par défaut), "FILE", "LENGTH",
"DELIMITER"
"NONE" = Aucune répartition en colonnes.
"FILE" = Les colonnes sont définies dans le fichier.
"LENGTH" = Largeurs de colonnes prédéfinies. Nécessite LENGTH_TAB=
comme Definition2.
"DELIMITER" = Les colonnes sont séparées par un caractère de séparation.
Nécessite DELIMITER= comme Definition2.
274
Chapter 3 Organisation fonctionnelle
Definition2
Définit la largeur et le nom des colonnes (facultatif) ou le caractère de
séparation.
Format : Littéral de script ou Variable de script
Valeurs autorisées : "LENGTH_TAB" et "DELIMITER"
l
"LENGTH_TAB"
La largeur et le nom des colonnes (facultatif) sont indiqués sous la
forme suivante : largeur de colonne=[nom de colonne]. La largeur de
colonne est définie par un nombre de caractères. Les colonnes doivent
être séparées par des virgules (22 colonnes maximum). Des virgules
supplémentaires doivent apparaître avant la première et après la
dernière définition de colonne. Si des doubles guillemets servent de
littéral de script pour la Definition2, les guillemets doivent dans le cas
contraire être simples.
Exemple :
"LENGTH_
TAB='10=Département,25=Responsable,10=Budget'"
l
"DELIMITER"
Le caractère de séparation est indiqué comme suit *Délimiteur*.
"*" = caractère de séparation libre.
Délimiteur = chaîne de 10 caractères maximum, séparant les
colonnes. Si un seul guillemet sert de Délimiteur, la Definition2 doit
être entre guillemets doubles et inversement.
Valeur par défaut : point-virgule (;)
Exemple :
"DELIMITER=*'*"
'DELIMITER=@"@'
Vous pouvez également introduire des tabulations dans les caractères
de séparation :
'DELIMITER=<TAB>'
UC_LOGIN
Nom d'un objet Login.
Format : Littéral de script ou Variable de script
Code retour
Référence sur la séquence de données du fichier.
Remarques
La fonction de script PREP_PROCESS_FILE prépare le contenu d'un fichier texte, un fichier LOG ou de
trace par exemple, qui sera traité ultérieurement à l'aide du script UC4.
Automation Engine
275
Par défaut, la fonction de script lit une ligne complète. Vous pouvez également y accéder de manière
structurée lorsque les lignes sont réparties en colonnes. Pour ce faire, les définitions suivantes
s'appliquent :
l
l
l
22 colonnes maximum d'une longueur totale de 2 048 octets,
Largeur de colonne maximale de 255 caractères et
nom de colonne de 32 caractères maximum.
Les colonnes peuvent également être auto-définies dans le fichier (première colonne). Exemple :
COL=LENGTH,LENGTH_TAB='74=PATH,25=NAME,5=VALUE,2=STATUS,9=DATE,7=TIME'
GET_PROCESS_LINE vous permet d'accéder à chaque colonne.
Le paramètre facultatif UC_LOGIN permet de transmettre le nom d'un objet Login à la fonction de
script. L'accès au fichier à lire et son transfert de l'hôte au UC4 Automation Engine sont exécutés à l'aide
des données d'identification définies dans le Login. Les Utilisateurs doivent bénéficier du privilège
"Transfert de Fichier : exécuter sans indiquer l'ID Utilisateur" lorsque la fonction de script PREP_
PROCESS_FILE doit être utilisée sans le paramètre UC_LOGIN.
Le code retour de la fonction script est la référence d'une séquence de données. Cette dernière est
transmise en tant que paramètre de démarrage aux instructions de script :PROCESS et :ENDPROCESS.
Grâce à l'utilisation conjointe de 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 fichier 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. La Variable ne peut être réutilisée que lorsque vous supprimez explicitement la séquence de
données avec l'instruction de script :CLOSE_PROCESS.
PREP_PROCESS_FILE n'est pris en charge que par des Agents de système d'exploitation.
L'utilisation en relation avec des Agents n'est pas possible pour les bases de données, les applications
Oracle, PeopleSoft, SAP, JMX ou Rapid Automation.
Attention : le traitement de fichiers extrêmement larges a une influence sur les performances de
l'Agent.
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die UC4-Datenbank
geschrieben werden.
Exemples
L'exemple prépare toutes les lignes d'un fichier contenant la chaîne "Start". Les lignes s'affichent dans le
protocole d'activation.
:SET &HND#=PREP_PROCESS_FILE
(WIN21,"F:\UC4\DIALOG\TEMP\INPUT.TXT","*Start*")
:PROCESS &HND#
: SET &LIGNE#=GET_PROCESS_LINE(&HND#)
: PRINT &LIGNE#
:ENDPROCESS
Dans le deuxième exemple, toutes les lignes d'un fichier sont lues. La largeur et le nom des colonnes ont
été définis dans le fichier. Les informations d'identification au WIN21 sont lues à partir de l'objet Login
indiqué.
276
Chapter 3 Organisation fonctionnelle
:SET &HND# = PREP_PROCESS_FILE(WIN21, "C:\LOG.TXT", ,"COL=FILE",'UC_
LOGIN=UC4FT')
Le troisième exemple lit toutes les lignes d'un fichier log de l'Interface Utilisateur qui retournent les
informations par la base de données. La largeur et le nom des colonnes sont ainsi spécifiés. Des colonnes
sans nom sont des espaces sans importance.
:SET &HND# = PREP_PROCESS_FILE(WIN21, "F:\UC4\DIALOG\TEMP\UCDJ_LOGG_
01.TXT","*DB-INFO*","COL=LENGTH","LENGTH_
TAB='8=DATE,1,6=HEURE,7,200=TEXTE'")
La tabulation est définie ici comme caractère de séparation. La fonction de script affiche ensuite la fonction
de script dans la troisième colonne.
:SET &HND# = PREP_PROCESS_FILE(UNIX01,
"/uc4/test.txt",,"COL=DELIMITER",'DELIMITER=<TAB>')
:PROCESS &HND#
:
SET &LIGNE# = GET_PROCESS_LINE(&HND#0,3)
:
PRINT &LIGNE#
:ENDPROCESS
Rubriques connexes :
Elément de script
Description
:CLOSE_PROCESS
Supprime une séquence de données au sein d'un script.
:PROCESS... :TERM_
PROCESS...
:ENDPROCESS
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.
GET_PROCESS_LINE
Détermine le contenu actuel des lignes d'une séquence de données.
Elément de script - Séquences de données
Généralités sur les scripts
Script - Division fonctionnelle
Script - Liste alphabétique
3.9.8 PREP_PROCESS_FILENAME
Fonction script : Détermine une liste avec le nom des fichiers qui se trouvent sur l'ordinateur indiqué et
met cette dernière à disposition comme liste interne (séquence de données) pour un traitement ultérieur.
Syntaxe
PREP_PROCESS_FILENAME(hôte, nom de fichier, [caractères génériques], [sous-dossier],
[filtre] [,COL=Définition1[, Définition2]] [,"UC_LOGIN=objet Login"] )
Elément de syntaxe
Description/format
Hôte
Machine (nom de l'Agent) sur laquelle se trouvent les fichiers.
Format : Littéral de script ou Variable de script
Automation Engine
Nom du fichier
277
Chemin et nom du fichier à rechercher.
Format : Littéral de script ou Variable de script
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.
Format : Littéral de script ou Variable de script
le paramètre a également une incidence sur la vérification de la syntaxe du
nom de fichier !
Valeurs autorisées : "Y" (valeur par défaut) et "N"
"Y" = nom de fichier avec caractères génériques, la syntaxe n'est pas prise
en compte
"N" = nom de fichier sans caractères génériques, la syntaxe est prise en
compte
Sous-dossier
Indique si des sous-dossiers ou des sous-répertoires doivent être inclus dans
la recherche.
Format : Littéral de script ou Variable de script
Valeurs autorisées : "Y" et "N" (valeur par défaut).
"Y" = sous-dossiers ou sous-répertoires inclus.
"N" = sous-dossiers ou sous-répertoires non pris en compte.
Filtre
Possibilité supplémentaire de filtrer les lignes de la séquence de données.
Format : Littéral de script ou Variable de script
La casse des caractères n'est pas prise en compte. 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.
Format : Littéral de script ou Variable de script
Valeurs autorisées : "NONE" (Valeur par défaut), "LENGTH", "DELIMITER"
"NONE" = Pas de répartition en colonnes.
"LENGTH" = Largeurs de colonnes prédéfinies. Nécessite LENGTH_TAB=
comme Definition2.
"DELIMITER" = Les colonnes sont séparées par un caractère de séparation.
Nécessite DELIMITER= comme Definition2.
278
Chapter 3 Organisation fonctionnelle
Definition2
Définit la largeur et le nom des colonnes (facultatif) ou le caractère de
séparation.
Format : Littéral de script ou Variable de script
Valeurs autorisées : "LENGTH_TAB" et "DELIMITER"
l
"LENGTH_TAB"
La largeur et le nom des colonnes (facultatif) sont indiqués sous la
forme suivante : largeur de colonne=[nom de colonne]. La largeur de
colonne est définie par un nombre de caractères. Les colonnes doivent
être séparées par des virgules (22 colonnes maximum). Des virgules
supplémentaires doivent apparaître avant la première et après la
dernière définition de colonne. Si des doubles guillemets servent de
littéral de script pour la Definition2, les guillemets doivent dans le cas
contraire être simples.
Exemple :
"LENGTH_TAB='3=Laufwerk,100=Nom de fichier"
l
"DELIMITER"
Le caractère de séparation est indiqué comme suit *Délimiteur*.
"*" = caractère de séparation libre.
Délimiteur = chaîne de 10 caractères maximum, séparant les
colonnes. Si un seul guillemet sert de Délimiteur, la Definition2 doit
être entre guillemets doubles et inversement.
Valeur par défaut : point-virgule (;)
Exemple :
"DELIMITER=*'*"
'DELIMITER=@"@'
Objet Login
Nom d'un objet Login.
Format : Littéral de script ou Variable de script
L'ensemble de l'impression UC_LOGIN=objet Login doit être défini entre
guillemets.
Code retour
Référence sur la séquence de données de la liste de fichier.
Remarques
La fonction de script PREP_PROCESS_FILENAME met à disposition une liste de noms de fichiers qui
seront traités ultérieurement à l'aide du script UC4. L'Agent détermine et prépare les fichiers sur l'hôte
sous forme de séquence de données.
La fonction de script détermine les fichiers à répertorier à l'aide du paramètre Nom de Fichier. Si le Nom de
Fichier contient une désignation du lecteur, les fichiers trouvés sont également répertoriés avec la
Automation Engine
279
désignation du lecteur. Il est possible de définir si les sous-dossiers ou les sous-répertoires doivent être
pris en compte. La liste de fichiers trouvés peut en outre être filtrée.
Les caractères génériques, les sous-dossiers, les filtres et les paramètres à répartir en colonnes sont
facultatifs. Si un paramètre de cette série est omis, sa virgule doit tout de même être définie. L'exécution
de la fonction de script peut se terminer par chacun des paramètres facultatifs. Aucune virgule n'est
ensuite nécessaire. La definition2 ne doit pas être utilisée sans la definition1.
Par défaut, la fonction de script GET_PROCESS_LINE lit l'ensemble des lignes 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. Pour ce faire, les définitions suivantes s'appliquent :
l
l
l
22 colonnes maximum d'une longueur totale de 2 048 octets,
Largeur de colonne maximale de 255 caractères et
nom de colonne de 32 caractères maximum.
GET_PROCESS_LINE vous permet d'accéder à chaque colonne.
Le paramètre facultatif UC_LOGIN permet de transmettre le nom d'un objet Login à la 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 liés. Les Utilisateurs doivent bénéficier du privilège
"Transfert de Fichier : exécuter sans indiquer l'ID utilisateur" lorsque la fonction de script PREP_
PROCESS_FILENAME doit être utilisée sans le paramètre UC_LOGIN.
Le code retour de la fonction script est la référence d'une séquence de données. Cette dernière est
transmise en tant que paramètre de démarrage aux instructions de script :PROCESS et :ENDPROCESS.
Grâce à l'utilisation conjointe de la fonction de script GET_PROCESS_LINE, vous pouvez traiter chaque
ligne et les colonnes correspondantes, de la séquence de données.
Si la liste de fichiers 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. La Variable ne peut être réutilisée que lorsque vous supprimez explicitement la séquence de
données avec l'instruction de script :CLOSE_PROCESS.
PREP_PROCESS_FILE n'est pas prise en charge par les Agents pour les applications (Oracle
Applications, PeopleSoft ou SAP).
Le script permet d'ouvrir les Transactions ouvertes dans la base de données UC4.
Exemples
L'exemple répertorie tous les documents HTML provenant de l'aide en ligne de la documentation UC4.
L'utilisation de caractères générique est explicitement indiquée.
:SET &HND# = PREP_PROCESS_FILENAME
("WIN01","c:\uc4\documenation\webhelp\german\uc*.htm","Y",,,,"UC_LOGIN=WIN_
LOGIN")
:PROCESS &HND#
: SET &LINE#=GET_PROCESS_LINE(&HND#)
: PRINT &LINE#
:ENDPROCESS
280
Chapter 3 Organisation fonctionnelle
Le deuxième exemple génère une liste de toutes les Feuilles de style fournies avec la documentation UC4.
Tous les sous-dossiers du répertoire de documentation doivent être recherchés. Le résultat ne contient
pas de donnée sur le lecteur et s'affiche dans le rapport.
:SET &HND# = PREP_PROCESS_FILENAME("WIN01",
"\uc4\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 UC4. Les lignes ont été réparties en
colonnes. Les colonnes sont séparées par une barre oblique. Lors du traitement de la séquence de
données, on accède à la 5e colonne qui contient les noms de fichier des programmes.
:SET &HND# = PREP_PROCESS_FILENAME
("WIN01","c:\uc4\server\bin\*.exe",,,,"COL=DELIMITER","DELIMITER=*\*")
:PROCESS &HND#
: SET &LIGNE# = GET_PROCESS_LINE(&HND#0,5)
: PRINT &LIGNE#
:ENDPROCESS
Le quatrième exemple se base sur le troisième. Mais ici un filtre est défini pour que seul le nom de fichier
de l'UC4 Automation Engine s'affiche dans le protocole d'activation.
:SET &HND# = PREP_PROCESS_FILENAME
(
"WIN01"
,"c:\uc4\server\bin\*.exe",,,"*server*","COL=DELIMITER","DELIMITER=*\*")
:PROCESS &HND#
: SET &LIGNE# = GET_PROCESS_LINE(&HND#0,5)
: PRINT &LIGNE#
:ENDPROCESS
Rubriques connexes :
Elément de script
Description
:CLOSE_PROCESS
Supprime une séquence de données au sein d'un script.
:PROCESS... :TERM_
PROCESS...
:ENDPROCESS
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.
GET_PROCESS_LINE
Détermine le contenu actuel des lignes d'une séquence de données.
Elément de script - Séquences de données
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.9.9 PREP_PROCESS_REPORT
Fonction script : Détermine les lignes de rapport des objets activables à l'aide de critères de filtrage et
met le résultat à disposition comme liste interne (séquence de données) pour un traitement ultérieur.
Automation Engine
281
Syntaxe
PREP_PROCESS_REPORT([Type d'objet] ,[RunID] ,[Type de rapport] [,Filtre] [,COL=Definition1]
[,Definition2])
Elément de syntaxe
Description/format
Type d'objet
Description courte du type de l'objet appartenant à la classe des objets
activables. Il est également possible de préparer le rapport du Client dans
lequel cette fonction de script est utilisée. Dans ce cas, la description courte
est "CLNT".
Format : Nom UC4, Littéral de script ou Variable de script
Paramètre facultatif, car le type d'objet peut être attribué clairement par le
numéro courant (RunID) (compatible avec la version 2.6xx).
RunID
Numéro courant (RunID) de la Tâche dont le rapport doit être traité.
Format : Variable de script ou chiffre
Si le rapport d'une autre Tâche doit être analysé, l'option "Générer à
l'Exécution" (onglet Attributs) doit être activée.
Il est inutile d'indiquer un RunID pour le rapport du Client.
Type de rapport
Code pour le Type de rapport.
Format : nom UC4, littéral de script ou Variable de script
Filtre
Valeur par défaut pour le contenu des lignes. La casse des caractères n'est
pas prise en compte.
Les caractères génériques * et ? sont pris en charge pour le filtre. Pour *, il
s'agit d'un caractère de remplacement pour un nombre de caractères au choix
(également aucun) et ? représente un caractère quelconque. Les caractères
génériques peuvent alors être indiqués à plusieurs reprises.
Format : littéral de script ou Variable de script
Valeur par défaut : "*"
Definition1
Définit si les lignes doivent être réparties en colonnes.
Format : Littéral de script ou Variable de script
Valeurs autorisées : "NONE" (Valeur par défaut), "LENGTH", "DELIMITER"
"NONE" = Pas de répartition en colonnes.
"LENGTH" = Largeurs de colonnes prédéfinies. Nécessite LENGTH_TAB=
comme Definition2.
"DELIMITER" = Les colonnes sont séparées par un caractère de séparation.
Nécessite DELIMITER= comme Definition2.
282
Chapter 3 Organisation fonctionnelle
Definition2
Définit la largeur et le nom des colonnes (facultatif) ou le caractère de
séparation.
Format : Littéral de script ou Variable de script
Valeurs autorisées : "LENGTH_TAB" et "DELIMITER"
l
"LENGTH_TAB"
La largeur et le nom des colonnes (facultatif) sont indiqués sous la
forme suivante : largeur de colonne=[nom de colonne]. La largeur de
colonne est définie par un nombre de caractères. Les colonnes doivent
être séparées par des virgules (22 colonnes maximum). Des virgules
supplémentaires doivent apparaître avant la première et après la
dernière définition de colonne. Si des doubles guillemets servent de
littéral de script pour la Definition2, les guillemets doivent dans le cas
contraire être simples.
Exemple :
"LENGTH_
TAB='10=Département,25=Responsable,10=Budget'"
l
"DELIMITER"
Le caractère de séparation est indiqué comme suit *Délimiteur*.
"*" = caractère de séparation libre.
Délimiteur = chaîne de 10 caractères maximum, séparant les
colonnes. Si un seul guillemet sert de Délimiteur, la Definition2 doit
être entre guillemets doubles et inversement.
Valeur par défaut : point-virgule (;)
Exemple :
"DELIMITER=*'*"
'DELIMITER=@"@'
Code retour
Référence sur la séquence de données du rapport.
Remarques
La fonction de script prépare le contenu du rapport d'objets activables pour un autre traitement par le script
UC4. Le rapport est lu dans la base de données UC4 et préparé sous forme de séquence de données.
Si vous accédez à un rapport d'une Tâche qui exécute la fonction de script, vous pouvez omettre les
paramètres RUNID et Type de rapport. Dans ce cas, la fonction de script détermine elle-même le
RunID.Pensez toutefois à définir les virgules faisant partie des paramètres. Par défaut, le rapport de Job
("REP") est utilisé pour les Jobs et le rapport d'activation ("ACT") est utilisé pour les autres Tâches.
Chaque rapport de Job peut être analysé dans l'onglet "Post-Script". En fonction du résultat, il est possible
de définir la fin définitive du Job à l'aide de l'instruction de script :MODIFY_STATE.
Automation Engine
283
Si vous accédez à une Tâche déjà terminée, mais dont le rapport est encore incomplet, la fonction de
script l'attend.
Par défaut, la fonction de script lit toutes les lignes du rapport. Vous pouvez également y accéder de
manière structurée lorsque les lignes sont réparties en colonnes. Pour ce faire, les définitions suivantes
s'appliquent :
l
l
l
22 colonnes maximum d'une longueur totale de 2 048 octets,
Largeur de colonne maximale de 255 caractères et
nom de colonne de 32 caractères maximum.
GET_PROCESS_LINE vous permet d'accéder à chaque colonne.
Le rapport est enregistré dans la langue dans laquelle le logging d'UC4 Automation Engine est réalisé.
Le code retour de la fonction script est la référence d'une séquence de données. Cette dernière est
transmise en tant que paramètre de démarrage aux instructions de script :PROCESS et :ENDPROCESS.
Grâce à l'utilisation conjointe de 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. La Variable ne peut être réutilisée que lorsque vous supprimez explicitement la séquence de
données avec l'instruction de script :CLOSE_PROCESS.
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die UC4-Datenbank
geschrieben werden.
Exemples
Le premier exemple recherche toutes les lignes d'un rapport de Job dans lequel se trouve le lecteur C: .
Les lignes complètes s'affichent dans le protocole d'activation.
:SET &HND# = PREP_PROCESS_REPORT("JOBS",, "REP", "*C:\*")
:PROCESS &HND#
:
SET &RET# = GET_PROCESS_LINE(&HND#)
:
PRINT &RET#
:ENDPROCESS
Le deuxième exemple se base sur un Job qui a interrogé les noms de fichier pour un traitement par
l'Utilisateur. Les noms de fichier ont été enregistrés dans le rapport d'activation. Si le guillemet est utilisé
comme délimiteur, les noms de fichier peuvent être lus. Ils s'affichent dans le protocole d'activation.
:SET &RUNNR# = GET_UC_OBJECT_NR("MAWI.TAG")
:SET &HND# = PREP_PROCESS_REPORT(, &RUNNR#,
"ACT",,"COL=DELIMITER","DELIMITER=*'*")
:PROCESS &HND#
:
SET &RET# = GET_PROCESS_LINE(&HND#0,1)
:
PRINT &RET#
:ENDPROCESS
Dans le troisième exemple, le propre rapport de Job est évalué dans l'onglet Post-script d'un Job. Cela
permet de déterminer si une erreur est survenue lors de la copie d'un fichier sous Windows. La fonction de
script est exclusivement appelée avec le paramètre Filtre. Les virgules qui précèdent représentent le type
d'objet, le numéro courant (RunID) et le type de rapport REP.
284
Chapter 3 Organisation fonctionnelle
:SET &HND# = PREP_PROCESS_REPORT(,,,"*Ne pas trouver le fichier*")
:PROCESS &HND#
:
SEND_MSG BU,BU,"Erreur survenue lors de la copie."
:
MODIFY_STATE RETCODE=50
:ENDPROCESS
Rubriques connexes :
Elément de script
Description
:CLOSE_PROCESS
Supprime une séquence de données au sein d'un script.
:PROCESS... :TERM_
PROCESS...
:ENDPROCESS
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.
GET_PROCESS_LINE
Détermine le contenu actuel des lignes d'une séquence de données.
Elément de script - Séquences de données
Exemples
Définition du statut final en fonction du contenu du rapport
Exécution d'un MBean
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.9.10 PREP_PROCESS_REPORTLIST
Fonction script : Détermine la liste de sorties enregistrées des Jobs déjà effectués et met le résultat à
disposition comme liste interne (séquence de données) pour un traitement ultérieur.
Syntaxe
PREP_PROCESS_REPORTLIST([RunID][, filtre])
Elément de syntaxe
Description/format
RunID
RunID d'un Job déjà exécuté dont le résultat enregistré (les rapports internes
ainsi que les fichiers de résultat de Job) doit être déterminé.
Format : Nom UC4, Littéral de script ou Variable de script
Si le paramètre n'est pas spécifié, le script se réfère à l'objet lui-même. Le
script doit ensuite être utilisé dans l'onglet "Post-traitement" uniquement ; il
n'est sinon pas possible de déterminer toutes les données de résultat de Job.
Filtre
Filtre sur le nom d'un fichier de résultat de Job.
Les caractères génériques * (remplacement de plusieurs caractères au choix)
et ? (remplacement d'un caractère exactement) peuvent être utilisés plusieurs
fois.
Format : Variable de script ou litéral de script
Code retour
Référence à la séquence de données de la liste du résultat de Job.
Automation Engine
285
Remarques
La fonction script détermine la liste des résultats de Job enregistrés stockés dans l'onglet "Répertoire" du
dialogue Rapport. Elle inclut aussi bien les fichiers externes que les rapports standard.
Le code retour de la fonction script est une référence de la séquence de données. Cette dernière peut être
transmise en tant que paramètre de démarrage aux instructions de script :PROCESS et :ENDPROCESS,
ce qui génère une boucle. Le nombre de cycles de la boucle correspond au nombre d'entrées du résultat de
Job. La fonction script GET_PROCESS_LINE permet d'accéder aux différentes colonnes (8 au total)
d'une seule ligne.
Aucune autre valeur ne peut être attribuée à la Variable de script contenant la référence de la séquence de
données. La Variable ne peut être réutilisée que lorsque vous supprimez explicitement la séquence de
données avec l'instruction de script :CLOSE_PROCESS.
Si le paramètre Filtre n'est pas spécifié, tous les fichiers de résultat de Job sont alors utilisés (correspond
à Filtre = *).
Les colonnes suivantes peuvent être lues pour chaque entrée :
Numéro Valeur
de
colonne
1
Type de rapport (par exemple : ACT, REP, REV01, etc.)
Les fichiers de résultat de Job externes portent les noms suivants :
l
l
$NNN - Fichiers qui ont été enregistrés de façon statique (Onglet Résultat")
#NNN - Fichiers qui ont été enregistrés de façon dynamique (Script :REGISTER_
OUTPUTFILE)
NNN - Numéro courant à 3 chiffres
2
Moment auquel la création du résultat de Job a été lancé.
Format : YYYY-MM-DD HH:MM:SS
3
Moment auquel la création du résultat de Job s'est terminée.
Format : YYYY-MM-DD HH:MM:SS
4
Titre (uniquement pour les Jobs SAP)
5
S'agit-il d'un rapport XML? (uniquement pour les Jobs SAP)
Valeurs possibles :
"0" - Non
"1" - Oui
6
Chemin et nom entièrement qualifiés du fichier de résultat de Job externe ou du rapport de
Job (type de rapport = REP). Cette colonne reste vide pour les rapports standard (tels que
ACT).
7
Le résultat de Job se trouve-t-il sur l'Agent?
Valeurs possibles :
"0" - Non
"1" - Oui
286
8
Chapter 3 Organisation fonctionnelle
Le résultat de Job est-il enregistré dans la base de données UC4?
Valeurs possibles :
"0" - Non
"1" - Oui
Exemple 1
Dans le premier exemple (le plus simple), le nom et le chemin des fichiers de résultat de la dernière
exécution du Job JOBS.WIN.OUTPUT sont lus et enregistrés dans le protocole d'activation.
:SET &RUNID# = GET_STATISTIC_DETAIL(,RUNID,JOBS.WIN.OUTPUT)
:SET&HND# = PREP_PROCESS_REPORTLIST(&RUNID#)
:PROCESS&HND#
: SET&FILENAME# = GET_PROCESS_LINE(&HND#, 6)
: IF&FILENAME# = ""
: ELSE
: PRINT"Nom de fichier = &FILENAME#"
: ENDIF
:ENDPROCESS
Exemple 2
Dans l'exemple ci-dessous, deux fichiers sont générés par un Job Windows et enregistrés comme résultat
de Job. Les lignes suivantes se trouvent dans l'onglet Script du Job.
dir C:\temp >> C:\temp\test.txt
:REGISTER_OUTPUTFILE"C:\temp\test.txt","N"
dir C:\windows >> C:\temp\test2.txt
:REGISTER_OUTPUTFILE"C:\temp\test2.txt","N"
Dans l'onglet Post-traitement du Job, la liste de résultat de Job complète est demandée avec l'élément de
script PREP_PROCESS_REPORTLIST et les différentes colonnes de chaque ligne sont écrites dans le
protocole de Job avec une boucle Process. Un Transfert de Fichier, qui transfère le fichier vers un autre
ordinateur, est lancé pour chaque fichier de résultat externe. L'Agent, le Login du Job et le chemin complet
du fichier sont transmis à l'objet Transfert de Fichier.
:PSET&AGENT_JOB# = GET_ATT(HOST)
:PSET&LOGIN_JOB# = GET_ATT(LOGIN)
:SET&HND# = PREP_PROCESS_REPORTLIST()
:PROCESS&HND#
: SET&RH_TYPE# = GET_PROCESS_LINE(&HND#, 1)
: SET&START_TIME# = GET_PROCESS_LINE(&HND#, 2)
: SET&END_TIME# = GET_PROCESS_LINE(&HND#, 3)
: SET&TITLE# = GET_PROCESS_LINE(&HND#, 4)
: SET&IS_XML# = GET_PROCESS_LINE(&HND#, 5)
: SET&FILENAME# = GET_PROCESS_LINE(&HND#, 6)
: SET&ON_AGENT# = GET_PROCESS_LINE(&HND#, 7)
: SET&IN_DB# = GET_PROCESS_LINE(&HND#, 8)
: PRINT"Type de rapport = &RH_TYPE#"
: PRINT "Début = &START_TIME#"
: PRINT"Fin = &END_TIME#"
: PRINT"Titre = &TITLE#"
Automation Engine
287
: PRINT"Rapport XML? = &IS_XML#"
: PRINT"Nom de fichier = &FILENAME#"
: PRINT"Sur l'Agent? = &ON_AGENT#"
: PRINT"Dans la base de données? = &IN_DB#"
: IF&FILENAME# = ""
: PRINT"Pas de fichier de résultat externe"
: ELSE
: IF&ON_AGENT# = 1
: PSET&FT_FILE# = &FILENAME#
: SET&AKT# = ACTIVATE_UC_OBJECT(JOBF.OUTPUTHANDLING,,,,,PASS_VALUES,)
: ENDIF
:ENDIF
: PRINT
:ENDPROCESS
Les données du Job activé sont maintenant saisies comme Agent source et Login dans le script de l'objet
Transfert de Fichier. Le chemin et le nom du fichier de résultat de Job externe sont également spécifiés
comme fichier source. Le nom du fichier source est repris comme cible et le chemin est remplacé par
"C:\output\".
:PUT_ATT FT_SRC_HOST = &AGENT_JOB#
:PUT_ATT FT_SRC_LOGIN = &LOGIN_JOB#
:PUT_ATT FT_SRC_FILE = &FT_FILE#
:SET&POS# = STR_FIND_REVERSE(&FT_FILE#, "\") + 1
:SET&FNAME# = STR_CUT(&FT_FILE#, &POS#)
:SET&DST_FILENAME# = STR_CAT("C:\output\",&FNAME#)
:PUT_ATT FT_DST_FILE = &DST_FILENAME#
Rubriques connexes :
Elément de script
Description
PREP_PROCESS_
REPORT
Détermine les lignes de rapport des objets activables à l'aide de critères de
filtrage et met le résultat à disposition comme liste interne (séquence de
données) pour un traitement ultérieur.
:PROCESS...
:TERM_PROCESS...
:ENDPROCESS
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.
GET_PROCESS_
LINE
Détermine le contenu actuel des lignes d'une séquence de données.
Elément de script - Séquences de données
Exemples
Définition du statut final en fonction du contenu du rapport
Exécution d'un MBean
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
288
Chapter 3 Organisation fonctionnelle
3.9.11 PREP_PROCESS_VAR
Fonction script : Détermine une liste de valeurs d'un objet Variable à l'aide de critères de sélection et
met le résultat à disposition comme liste interne (séquence de données) pour un traitement ultérieur.
Syntaxe
PREP_PROCESS_VAR(Variable [, clé [, valeur [, colonne]]])
Elément de syntaxe
Description/format
Variable
Nom de l'objet Variable dont les valeurs doivent être lues.
Format : Nom UC4, Littéral de script ou Variable de script
Clé
Filtre pour la clé/colonne.
Format : littéral de script ou Variable de script
64 caractères maximum
Valeur par défaut : "*"
Pour les Variables dynamiques, la colonne Clé est toujours la première
colonne de valeurs. La colonne Résultat est créée une fois les entrées de
variable déterminées.
Les caractères génériques "*" et "?" sont autorisés. "*" signifie n'importe
quelle chaîne de caractères et "?" exactement un caractère.
Valeur
Filtre pour la valeur.
Format : littéral de script ou Variable de script
64 caractères maximum
Valeur par défaut : "*"
Les caractères génériques "*" et "?" sont autorisés. "*" signifie n'importe
quelle chaîne de caractères et "?" exactement un caractère.
Colonne
Colonne de valeurs à laquelle se réfère le filtre pour la valeur
Format : littéral de script, nombre sans guillemets ou Variable de script
Les caractères génériques ne sont pas autorisés !
Valeurs autorisées :
Variables statiques : "1" à "5"
Variables dynamiques : "1" à n
Même si vous ne souhaitez appliquer un filtre que sur la valeur, vous
devez conserver la virgule précédente. Exemple :
:SET &HND# = PREP_PROCESS_VAR("MAINTENANCE
BD",,"CLIENT", 1)
Code retour
Référence à la séquence de données de l'objet Variable.
Remarques
La fonction de script lit les valeurs d'un objet Variable. Pour ce faire, les valeurs lues peuvent être limitées
via les paramètres facultatifs clef et valeur. Pour ces paramètres, il est possible d'utiliser les caractères
Automation Engine
289
génériques "*" et "?". Attention aux majuscules et aux minuscules !
Valeur se réfère au contenu d'une colonne de valeurs. Avec la colonne, vous définissez le numéro de la
colonne de valeurs qui doit être parcourue. Si la colonne n'est pas indiquée, la première colonne de valeurs
est automatiquement utilisée. Les Variables statiques possèdent 5 colonnes de valeurs. Le nombre de
colonnes de variables dynamiques n'est pas limité et dépend de la source de données ou des paramètres
dans l'objet Variable.
L'utilisation du paramètre Colonne est possible uniquement en relation avec la valeur ! Si le filtre Valeur
n'est pas spécifié, la saisie d'une colonne sera alors non valide !
Le script ne permet pas de sélectionner certaines colonnes ! Les entrées de variable filtrées sont par
conséquent retournées avec les valeurs de toutes les colonnes, y compris la Clé ou la colonne Résultats.
Attention : il est impossible d'utiliser des caractères génériques pour la valeur lorsqu'il s'agit d'une
Variable dont le type de données est un "nombre". La fonction renvoie toutes les entrées ou chacune de
celles qui contiennent exactement la valeur indiquée.
Attention : indiquer une chaîne vide "" pour le filtrage équivaut à entrer "*" : toutes les valeurs sont alors
renvoyées.
Si vous n'indiquez ni la clé ni la valeur, toutes les entrées de l'objet Variable seront utilisées.
Le code retour de la fonction script est une référence de la séquence de données. Cette dernière est
transmise en tant que paramètre de démarrage aux instructions de script :PROCESS et :ENDPROCESS.
Grâce à l'utilisation conjointe de la fonction de script GET_PROCESS_LINE vous pouvez maintenant
accéder à chacune des lignes de l'objet Variable.
Si l'objet Variable ne contient pas les valeurs recherchées, 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é.
Les noms des objets VARA contenant une Variable doivent être indiqués entre guillemets ; sinon, un
message d'erreur s'affiche.
Aucune autre valeur ne peut être attribuée à la Variable de script contenant la référence de la séquence de
données. La Variable ne peut être réutilisée que lorsque vous supprimez explicitement la séquence de
données avec l'instruction de script :CLOSE_PROCESS.
Attention : pour les variables dynamiques (SQL, SQLI, MULTI), le nombre de lignes disponibles avec le
paramètre SQLVAR_MAX_ROWS (UC_SYSTEM_SETTINGS) est limité.
Cela signifie : si le paramètre est par exemple défini sur 1 000, les objets Variable ne renvoient que les
1 000 premières lignes. L'accès aux lignes restantes avec le script PREP_PROCESS_VAR est alors
impossible ! Le paramètre peut être défini au maximum sur 20 000.
Exemples
L'objet Variable suivant est indiqué :
290
Chapter 3 Organisation fonctionnelle
Dans le premier exemple, toutes les valeurs sont déterminées et s'affichent dans une boucle de processus
avec l'instruction :PRINT dans le protocole d'activation.
:SET &HND# = PREP_PROCESS_VAR(MAINTENANCE BD)
:PROCESS &HND#
:
SET &GB#= GET_PROCESS_LINE(&HND#,1)
:
SET &VALEUR# = GET_PROCESS_LINE(&HND#,2)
:
PRINT "&GB# &VALEUR#"
:ENDPROCESS
:CLOSE_PROCESS &HND#
Dans le deuxième exemple, seules les entrées dont la clé commence par "Client" sont lues.
:SET &HND# = PREP_PROCESS_VAR(MAINTENANCE BD,"CLIENT*")
:PROCESS &HND#
:
SET &GB#= GET_PROCESS_LINE(&HND#,1)
:
SET &VALEUR# = GET_PROCESS_LINE(&HND#,2)
:
PRINT "&GB# &VALEUR#"
:ENDPROCESS
:CLOSE_PROCESS &HND#
Rubriques connexes :
Elément de script
Description
:CLOSE_PROCESS
Supprime une séquence de données au sein d'un script.
:PROCESS... :TERM_
PROCESS...
:ENDPROCESS
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.
GET_PROCESS_LINE
Détermine le contenu actuel des lignes d'une séquence de données.
Elément de script - Séquences de données
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
Automation Engine
291
3.10 Traitement d'Evènement
3.10.1 GET_CONSOLE, GET_EVENT_INFO
Fonction script : Lit les données des Evènements de console, de fichier ou de base de données
survenus.
Syntaxe
GET_CONSOLE(Mot clé[, Index])
GET_EVENT_INFO(Mot clé[, Index])
Elément de syntaxe
Description/format
Mot clé
Indique quelle partie du message doit être lue.
Format : Nom UC4, Littéral de script ou Variable de script
Les mots clés pour chaque plate-forme sont expliqués dans les tables cidessous.
Index
Peut seulement être utilisé conjointement aux mots clés INSERT, RESULT1
et RESULT2.
Format : littéral de script, nombre ou Variable de script. Valeur par défaut : 1
Pour INSERT :
Accès aux champs à 16 bits d'un message de console sur z/OS ou à la partie
Variable du texte d'Alerte (Insert) d'un message OS/400.
Pour RESULT1 et RESULT2 :
Numéro de colonne de la requête SQL (Evènement de la base de données)
Mots clés
Mot clé
ACCESS
ACTIVATION
STATE
ALERT_
OPTION
CATEGORY
CHANNEL
Cons
ole
BS20
00
Cons
ole
z/OS
Cons
ole
OS/4
00
Cons
ole
SAP
(ABA
P)
Cons Cons
ole
ole
SAP
SAP
(XI) (Java)
Cons
ole
Wind
ows
Systè Système
me
de
de
fichiers
fichie automati
rs
que
z/OS
Base
de
donn
ées
292
Chapter 3 Organisation fonctionnelle
DDNAME
EVENT_
ADDITIONAL_
PARM
EVENT_
COUNTOFJO
BS
EVENT_GUID
EVENT_ID
EVENT_
PARM
EVENT_
PROCESSST
ATE
EVENT_
SERVER
EVENT_
STATE
EVENT_TYPE
FILENAME
FILESIZE
ID
INFO_
ACTION
INFO_TEXT
INSERT
INSERT_
COUNT
JOB_
ABENDED
JOB_ENDED
JOB_ID
JOB_NAME
LPAR_NAME
MEMGEN
MSG_
DESCRIPTOR
MSG_FILE_
LIBRARY
Automation Engine
MSG_
FILENAME
MSG_ID
MSG_KEY
MSG_LEVEL
MSG_
LIBRARY_
USED
MSG_MISC
MSG_
SEVERITY
MSG_TEXT
MSGNR
MSGTYPE,
MSGTYP
OS_NAME
PARTY
PROCESSID
PROGRAM_
NAME
REPLY_ID
RESULT
RESULT1
RESULT2
RETCODE
RETCODE_
STATE
SEND_JOB
SEND_JOB_
NUMBER
SEND_
USER_
PROFILE
SERVICE
293
294
Chapter 3 Organisation fonctionnelle
SMS_
MANAGEMEN
T_CLASS
SMS_DATA_
CLASS
SMS_
STORAGE_
CLASS
SOURCE
STATE
STEP_NAME
SYS_NAME
SYSPLEX_
NAME
TIMESTAMP
TYPE
USER
Attention : l'utilisation de mots clefs, listés dans la colonne "Système de Fichiers", n'est possible que
pour les Evènements systèmes de fichiers avec le paramètre pour la "Vérification" tant "FILE_SIZE" ou
"vide" (avec ou sans combinaison de "FILE_STABLE" ou "FILE_CHANGED") qu'avec "PATH_FILE_
COUNT" (toutefois seulement en combinaison avec "FILE_STABLE" ou "FILE_CHANGED").
Description
Mot clé
Description
ACCESS
Accès au fichier.
Valeur autorisée :
"CLOSE" - Fermeture du fichier
ACTIVATIONSTATE
Statut de l'adaptateur
Valeurs autorisées : "STARTED" et "STOPPED"
ALERT_OPTION
Indique si et quand un signal d'avertissement SNA est créé, et si un message
est envoyé.
Valeurs autorisées :
"*DEFER" - Le signal d'avertissement est envoyé après l'analyse locale du
problème.
"*IMMED" - Un signal d'avertissement est immédiatement envoyé en même
temps que le message. L'attribut "Autoriser l'alarme" doit être défini sur
"*YES" pour la file d'attente des messages.
"*NO" - Aucun signal d'avertissement n'est envoyé.
"*UNATTEND" - Un signal d'avertissement est envoyé uniquement lorsque le
système est exécuté en mode non surveillé. Pour ce faire, le statut d'Alerte
doit avoir l'attribut de réseau (ALRSTS) "*UNATTEND".
CATEGORY
Catégorie de l'Evènement
Automation Engine
295
CHANNEL
Canal de communication
DDNAME
Désignation DD
EVENT_
ADDITIONAL_PARM
Paramètres supplémentaires des évènements du planificateur Java de SAP.
EVENT_
COUNTOFJOBS
Nombre de Jobs SAP ayant été déclenchés (ABAP)
EVENT_GUID
Numéro d'instance de l'Evènement SAP (ABAP)
EVENT_ID
ID de l'Evènement (ABAP /Evènement Java)
EVENT_PARM
Paramètres d'Evènement SAP (ABAP /Evènement Java)
EVENT_
PROCESSSTATE
Statut du traitement SAP (ABAP)
EVENT_SERVER
Serveur d'Evènements SAP (ABAP)
EVENT_STATE
Statut de l'Evènement SAP (ABAP)
EVENT_TYPE
Type d'Evènement du planificateur Java dans SAP.
FILENAME
Nom du fichier
Pour les Evènements de systèmes de fichiers avec des caractères
génériques, la valeur suivante est renvoyée comme nom de fichier :
l
l
*ALL - Lorsque l'option "Vérifier tous les fichiers" est activée.
*ONE- Lorsque l'option "Vérifier tous les fichiers" est désactivée.
FILESIZE
Taille du fichier
ID
Identifiant message
INFO_ACTION
Action
Valeurs autorisées : "Y" et "N"
"Y" - un objet a été activé.
"N" - aucune activation d'objet n'a eu lieu.
INFO_TEXT
Nom de l'objet activé.
INSERT
Index permet d'accéder à une partie variable spécifique du message.
INSERT_COUNT
Détermine le nombre de parties variables du message.
JOB_ABENDED
Statut de fin du Job ayant fermé le fichier
Valeurs autorisées : "Y" et "N"
"Y" - le Job s'est terminé de façon anormale.
"N" - le Job s'est terminé normalement.
JOB_ENDED
Statut du Job ayant fermé le fichier
Valeurs autorisées : "Y" et "N"
"Y" - le Job est terminé.
"N" - le Job est encore en cours.
JOB_ID
Désignation d'identification du Job
JOB_NAME
Nom du Job
LPAR_NAME
Renvoie le nom du LPAR.
MEMGEN
Nom du membre ou numéro de génération
296
Chapter 3 Organisation fonctionnelle
MSG_DESCRIPTOR
Description du message dans un champ de 16 bits.
Bit 01(correspond à X'80') = SYSTEM_FAILURE - Défaillance système
Bit 02 (correspond à X'40') = IMMEDIATE_ACTION - Action immédiate
requise
Bit 03 (correspond à X'20') = EVENTUAL_ACTION - Action requise
Bit 04 (correspond à X'10') = SYSTEM_STATUS - Etat du système
Bit 05 (correspond à X'08') = IMMEDIATE_COMMAND - Réponse de
commande immédiate
Bit 06 (correspond à X'04') = JOB_STATUS - Etat du Job
Bit 07 (correspond à X'02') = APPLICATION - Programme/processeur de
l'application
Bit 08 (correspond à X'01') = OUT_OF_LINE - Hors ligne
Bit 09 (correspond à X'80') = OPERATOR_REQUEST - Requête de
l'opérateur
Bit 10 (correspond à X'40') = TRACK_COMMAND_R - Suivi des réponses de
commande
Bit 11 (correspond à X'20') = CRITICAL_ACTION - Action d'évaluation
critique
Bit 12 (correspond à X'10') = IMPORTANT_INFO - Informations importantes
Bit 13 (correspond à X'08') = PREVIOUSLY_AUTO - Précédemment
automatisé
Bit 14 (correspond à X'04') - Réservé
Bit 15 (correspond à X'02') - Réservé
Bit 16 (correspond à X'01') - Réservé
MSG_FILE_LIBRARY
Nom de la bibliothèque contenant le fichier du message ou les valeurs
utilisées par le programme d'envoi "*CURLIB" ou "*LIBL".
MSG_FILENAME
Nom du fichier de message contenant le message reçu.
MSG_ID
Identifiant message du message reçu.
En cas de message improvisé, une espace est renvoyée.
MSG_KEY
Clé de message du message reçu.
Valeur à 4 chiffres au format hexadécimal X'xxxxxxxx'.
MSG_LEVEL
Niveau d'urgence du message dans un champ de 16 bits.
Bit 01(correspond à X'80') = WTOR - WTOR
Bit 02 (correspond à X'40') = IMMEDIATE_ACTION - Action immédiate
Bit 03 (correspond à X'20') = CRITICAL_ACTION - Action critique requise
Bit 04 (correspond à X'10') = EVENTUAL_ACTION - Action requise
Bit 05 (correspond à X'08') = INFO - Information
Bit 06 (correspond à X'04') = BROADCAST
Bit 07 (correspond à X'02') - Réservé
Bit 08 (correspond à X'01') - Réservé
Bit 09 (correspond à X'80') - Réservé
Bit 10 (correspond à X'40') - Réservé
Bit 11 (correspond à X'20') - Réservé
Bit 12 (correspond à X'10') - Réservé
Bit 13 (correspond à X'08') - Réservé
Bit 14 (correspond à X'04') - Réservé
Bit 15 (correspond à X'02') - Réservé
Bit 16 (correspond à X'01') - Réservé
Automation Engine
297
MSG_LIBRARY_
USED
Nom effectif de la bibliothèque utilisée pour envoyer le message.
La bibliothèque peut contenir des instructions Override et n'est donc pas
nécessairement celle dans laquelle le message se trouve actuellement.
MSG_MISC
Diverses informations supplémentaires sur le message dans un champ de 16
bits.
Bit 01(correspond à X'80') = DISPLAY_UD_MSG - afficher les message UD
Bit 02 (correspond à X'40') = DISPLAY_ONLY_UD_MSG - afficher
uniquement les messages UD
Bit 03 (correspond à X'20') = QUEUE_BY_ID_ONLY - trier selon ID
Bit 04 (correspond à X'10') = QUEUE_BY_AUTO - trier selon automatisation
Bit 05 (correspond à X'08') = QUEUE_BY_HARDCOPY - trier selon version
papier
Bit 06 (correspond à X'04') - Réservé
Bit 07 (correspond à X'02') - Réservé
Bit 08 (correspond à X'01') - Réservé
Bit 09 (correspond à X'80') = ECHO_OPERATOR_CMD - commande echo
opérateur
Bit 10 (correspond à X'40') = ECHO_INTERNAL_CMD - commande echo
interne
Bit 11 (correspond à X'20') = RESULT_OF_WTL_MACRO - résultat de la
macro wtl
Bit 12 (correspond à X'10') - Réservé
Bit 13 (correspond à X'08') - Réservé
Bit 14 (correspond à X'04') - Réservé
Bit 15 (correspond à X'02') - Réservé
Bit 16 (correspond à X'01') - Réservé
MSG_SEVERITY
Sévérité du message reçu.
Valeurs autorisées : "0" à "99".
MSG_TEXT
Texte du message (valeur par défaut)
MSGNR
Numéro de message
MSGTYPE, MSGTYP
Type de message
Valeur autorisée spécialement pour OS/400 :
"01" - Fin
"02" - Diagnostic
"04" - Information
"05" - Requête
"06" - Copie
"08" - Demande
"10" - Demande guidée
"14" - Remarque (exception déjà traitée)
"15" - Message d'arrêt (exception déjà traitée)
"16" - Remarque (exception pas encore traitée)
"17" - Message d'arrêt (exception pas encore traitée)
"21" - Réponse, validité non vérifiée
"22" - Réponse, validité vérifiée
"23" - Réponse, message par défaut
"24" - Réponse, réponse par défaut du système
"25" - Réponse issue de la liste de réponses du système
298
Chapter 3 Organisation fonctionnelle
OS_NAME
Nom du système d'exploitation défini par IBM dans le message de console.
Actuellement toujours "MVS".
PARTY
Partenaire
PROCESSID
Numéro de Tâche (TSN) dans le message de console.
PROGRAM_NAME
Désignation du programme
REPLY_ID
Reply ID du message de console.
RETCODE
Code retour du Job dans le format converti
RETCODE_STATE
Filtrage sur le code retour
Valeurs autorisées : "Y" et "N"
"Y" - Le code retour a été filtré.
"N" - Le code retour n'est pas important dans le cadre de la résolution de
l'Evènement.
RESULT
Indique si la condition a été remplie pour les Evènements du système de
fichiers dotés des vérifications FILESIZE ou PATH_FILE_COUNT.
Valeurs autorisées : "Y" et "N"
"Y" - la condition a été remplie.
"N" - la condition n'a pas été remplie.
RESULT1
RESULT2
RESULT1 et RESULT2 permettent d'accéder aux résultats de la requête
SQL pour les valeurs "valeur 1" et "valeur 2" respectivement.
Indiquez pour l'index le numéro de la colonne à partir de laquelle la valeur doit
être lue.
Attention : l'Evènement de la base de données ne lit que les 10 premières
colonnes. Le contenu des colonnes excédant 255 caractères est tronqué.
La fonction de Script renvoie le code retour " " en cas de tentative d'accès à
une colonne qui n'existe plus.
SEND_JOB
Nom du Job dans lequel le message reçu a été envoyé.
SEND_JOB_NUMBER Numéro du Job dans lequel le message reçu a été envoyé.
SEND_USER_
PROFILE
Nom du profil d'Utilisateur qui a envoyé le message reçu.
SERVICE
Service
SMS_
MANAGEMENT_
CLASS
SMS_DATA_CLASS
SMS_STORAGE_
CLASS
Nom de la classe
SOURCE
Source de l'Evènement
Automation Engine
STATE
299
Etat
Valeurs possibles :
"*"
"ERROR"
"OK"
"INACTIVE"
"UNKNOWN"
"UNREGISTERED"
STEP_NAME
Nom du step de Job
SYS_NAME
Nom Système défini par l'Utilisateur
SYSPLEX_NAME
Nom SYSPLEX
TIMESTAMP
Date et heure du message de console.
TYPE
Type d'Evènement
Valeurs autorisées :
"I" - Information
"W" - Avertissement
"E" - Erreur
"S" - Surveillance : réussie
"F"- Surveillance : erronée
USER
Utilisateur
Remarques
Les Scripts GET_CONSOLE et GET_EVENT_INFO vous offrent la possibilité de fournir des informations
sur l'Evènement survenu. La syntaxe est la même dans les deux Scripts.
La fonction de Script GET_CONSOLE permet de fournir les données de message lorsque survient un
Evènement de console. Il s'agit de composants définis du message de console qui peuvent être indiqués
avec un mot clé. La fonction renvoie par défaut le texte du message.
La fonction de Script peut être utilisée dans un Evènement de type Console. Le message de console peut
ainsi être lu dans BS2000 et z/OS. Dans OS/400, la fonction de Script sert à obtenir des informations
provenant de la file d'attente des messages. Le fichier INI de l'Agent OS/400 permet de définir la file
d'attente à surveiller.
GET_EVENT_INFO vous permet de lire les informations du Script des Evènements systèmes de fichiers.
Pour ce faire, de nombreux mots clefs sont disponibles spécialement pour z/OS.
Spécificités de plates-formes
z/OS
Les mots clés MSG_DESCRIPTOR, MSG_LEVEL et MSG_MISC ont une particularité. Il s'agit de
champs à 16 bits dont chaque bit a une signification particulière. La fonction de Script permet d'interroger
chaque bit. L'index permet d'indiquer le bit en tant que valeur ou constante. Le code retour de la fonction de
Script est "1" (le bit est défini) ou "0" (le bit n'est pas défini).
OS/400
300
Chapter 3 Organisation fonctionnelle
Lorsque INSERT_COUNT sert de mot clef, le nombre de parties variables d'un message OS/400 peut être
défini. Lorsque INSERT sert de mot clé et qu'un index est indiqué, on accède à une partie Variable
spécifique du message. En option, Index peut être indiqué exclusivement pour INSERT. Si aucun index
n'est indiqué, la fonction renvoie la première partie Variable du message.
Exemples
La fonction de Script GET_CONSOLE indique dans l'exemple le numéro de Tâche du processus qui
déclenche l'Evènement.
:SET &NUMTACHE#=GET_CONSOLE(PROCESSID)
Dans le deuxième exemple, le nombre de parties variables du message (insertions) est indiqué en premier
dans un message OS/400. Une boucle de processus est ensuite exécutée dans laquelle toutes les
insertions sont écrites dans le rapport d'activation.
:SET &COUNT# = GET_CONSOLE("INSERT_COUNT")
:SET &IDX# = 1
:WHILE &COUNT# > 0
:
SET &INSERT# = GET_CONSOLE("INSERT", &IDX#)
:
SET &HELP# = FORMAT(&IDX#, "000")
:
PRINT "INSERT[&HELP#] = '&INSERT#'"
:
SET &IDX# = ADD(&IDX#, 1)
:
SET &COUNT# = SUB(&COUNT#, 1)
:ENDWHILE
Les lignes suivantes sont journalisées dans le rapport d'activation :
20010110/235011.000
20010110/235011.000
20010110/235011.000
20010110/235011.000
20010110/235011.000
20010110/235011.000
-
U0020408
U0020408
U0020408
U0020408
U0020408
U0020408
INSERT[001]
INSERT[002]
INSERT[003]
INSERT[004]
INSERT[005]
INSERT[006]
=
=
=
=
=
=
'QPFRMON'
'QPGMR'
'007982'
'23:48:43'
'10/01/01'
'0'
Le troisième exemple détermine un composant du message de console dans z/OS. Le bit 03 permet
d'accéder au mot clef MSG_DESCRIPTOR. Le bit 03 est indiqué parfois en tant que valeur, d'autres fois
en tant que constante.
:SET &RET# = GET_CONSOLE("MSG_DESCRIPTOR", 3)
:SET &RET# = GET_CONSOLE("MSG_DESCRIPTOR", "EVENTUAL_ACTION")
L'exemple suivant montre un extrait de Script dans lequel un nom de fichier est déterminé et le contenu du
fichier est lu ligne par ligne.
:SET &NOMDEFICHIER# = GET_EVENT_INFO (FILENAME)
:SET &HND# = PREP_PROCESS_FILE ("MVSHOST", &NOMDEFICHIER#)
Le cinquième exemple liste les valeurs d'une requête SQL (pour la "valeur 1") au sein d'un Evènement de
base de données.
Résultats SQL :
Nom
Prénom
Emplacement
Henri
Jean
Paris
Le prénom est spécifié comme suit :
:SET &PRENOM# = GET_EVENT_INFO (RESULT1, 2)
Automation Engine
301
La ligne suivante renseigne l'emplacement :
:SET &EMPLACEMENT# = GET_EVENT_INFO (RESULT1, 3)
Rubriques connexes :
Elément de script
Description
GET_BIT
Vérifie si un bit particulier est défini dans un champ de bit.
Scripts - Traitement d'Evènement
Exemples
Réaction à des Evènements externes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.10.2 GET_FILESYSTEM
Fonction script : Détermine les différentes valeurs de système de fichiers à partir d'une machine à
l'emplacement correspondant au chemin indiqué.
Syntaxe
GET_FILESYSTEM([Hôte],[Chemin],Valeur du système de fichiers[,Unité de mesure]
[,Inclure sous-répertoires])
Elément de syntaxe
Description/format
Hôte
Nom de l'Agent qui s'exécute sur la machine d'après laquelle les informations
doivent être déterminées.
Format : Nom UC4, Littéral de script ou Variable de script
Si vous n'indiquez pas le nom de l'hôte, le dernier Agent utilisé avec la
fonction de script GET_FILESYSTEM est réutilisé. Les valeurs ne sont pas à
nouveau déterminées, mais seules sont affichées celles de la dernière
exécution.
302
Chapter 3 Organisation fonctionnelle
Chemin
On entre ici les fichiers ou systèmes de fichiers pour lesquels les informations
doivent être déterminées.
Vous pouvez désigner ici, indépendamment du système cible, des noms de
fichier, des lecteurs, des volumes, des chemins, des extensions, des
Generation Data Groups (GDG) etc., qualifiés ou avec des caractères
génériques. Vous pouvez utiliser les caractères génériques "*" et "?". "*"
signifie n'importe quelle chaîne de caractères et "?" exactement un caractère.
Attention : dans Windows, les caractères génériques "*" et "?" peuvent
uniquement être utilisés pour les noms de fichiers et non pas pour les
dossiers au sein du chemin !
Format : nom UC4, littéral de script ou Variable de script
Si vous n'indiquez pas le nom du chemin, on se sert du dernier chemin
utilisé avec la fonction de script GET_FILESYSTEM. Les valeurs ne sont pas
à nouveau déterminées, mais seules sont affichées celles de la dernière
exécution.
Terminez toujours la saisie du chemin par une barre oblique inversée "\*"
sous Windows. Vous obtiendrez ainsi un message d'erreur des fonctions de
script pour le traitement des erreurs si le chemin spécifié n'existe pas.
Exemple :
C:\UC4\*
Il est nécessaire d'indiquer un ou plusieurs volumes avec le préfixe
"VOL=".
Exemple : "VOL=ALG*1" fournit des informations sur tous les volumes
commençant par "ALG" et finissant par "1". Tous les autres caractères
peuvent se trouver entre. En l'occurrence, il s'agit exactement de quatre
caractères, car le nom d'un volume contient 8 caractères.
Pour désigner les Generation Data Groups, le caractère générique "*" doit
être utilisé uniquement entre parenthèses.
Automation Engine
Valeur de système de
fichiers
303
La fonction de script peut déterminer les informations suivantes :
PATH_SPACE_ALLOCATED - Espace mémoire ou espace disque alloué
PATH_SPACE_RELEASE - Espace mémoire pouvant être libéré
(uniquement BS2000)
PATH_SPACE_USED - Volume total occupé par les fichiers à
l'emplacement indiqué
PATH_SPACE_UNUSED - Espace mémoire ou espace disque inutilisé
(uniquement BS2000)
PATH_FILE_COUNT - Nombre de fichiers,
PATH_FOLDER_COUNT - Nombre de répertoires (uniquement Windows et
Unix),
FILESYSTEM_SPACE_TOTAL - Capacité de stockage du disque
(uniquement Windows),
FILESYSTEM_SPACE_USED - Espace mémoire utilisé sur le disque
(uniquement Windows),
FILESYSTEM_SPACE_FREE - Espace mémoire disponible sur le volume
(z/OS) ou le disque (Windows)
Format : nom UC4, littéral de script ou Variable de script
Unité de mesure
En option, on peut indiquer sous quelle forme la valeur du système de fichiers
doit être renvoyée.
Si aucune unité de mesure n'est indiquée, le code retour est défini par l'hôte
(valeur par défaut). Par exemple, une machine BS2000 renvoie la valeur "1"
pour une page PAM. Cela correspond à 2048 octets.
Si une unité de mesure est indiquée, le code retour est converti comme
spécifié.
Valeurs autorisées : "octets", "Ko", "Mo", "Go" ou "To".
Format : nom UC4, littéral de script ou Variable de script
La valeur par défaut est également utilisée en cas d'indication d'une unité
de mesure non valide. Mais ensuite, la fonction de script ne s'interrompt pas
si vous utilisez :ON_ERROR.
Inclure SousRépertoires
Paramètre indiquant si les sous-répertoires du chemin spécifié doivent être
inclus.
Valeurs autorisées : "Y" (valeur par défaut) et "N"
Cette option n'est disponible que pour les Agents VMS-, UNIX- et Windows.
Attention, activez cette option diminue les performances du système
UC4.
Codes retour
Résultat pour la valeur recherchée dans le système de fichiers
"0" : une erreur est survenue lors de la détermination de la valeur du système de fichiers (exception :
PATH_FILE_COUNT, voir ci-dessous).
304
Chapter 3 Organisation fonctionnelle
Remarques
Ce script ne peut être utilisé en relation avec des Agents du système d'exploitation (Windows, UNIX,
VMS, z/OS, OS/400, NSK et BS2000) !
Si une erreur survient lors de l'accès aux informations sur le système de fichiers (par ex. : chemin
introuvable), le code de retour est "0".
L'instruction de script :ON_ERROR permet de définir la réaction à cette erreur. Comme indiqué
auparavant, vous pouvez l'analyser avec les fonctions de script pour le traitement des erreurs. Le
traitement du script se poursuit. Toutefois, vous avez également la possibilité de l'interrompre.
Pour PATH_FILE_COUNT, la fonction peut évidemment renvoyer 0 lorsque le répertoire ne contient
aucun fichier. Pour détecter une erreur, vous devez donc utiliser en plus les fonctions de script pour le
traitement des erreurs (par ex. SYS_LAST_ERR_NR) C'est par exemple le cas si l'hôte n'est pas actif. Il
est ainsi possible de différencier si le code retour 0 se rapporte au nombre de fichiers ou à l'erreur
survenue.
Le code retour 0 est également affiché en cas d'autorisation d'accès manquante pour le dossier
système (information de volume système, Windows).
Le script permet d'ouvrir les Transactions ouvertes dans la base de données UC4.
Paramètres facultatifs Hôte et Chemin
Cas 1 :
GET_FILESYSTEM peut être utilisé dans les onglets de traitement par tous les objets activables (p. ex.
Workflow). Il faut toujours indiquer un hôte et un chemin lors de l'exécution de la fonction de script. On peut
omettre les paramètres uniquement si GET_FILESYSTEM a déjà été exécuté une fois dans le script.
Cependant, vous obtenez dans ce cas la même valeur que dans l'exécution précédente. En voici un
exemple :
:SET &Nbfichiers# = GET_FILESYSTEM(WIN01, "C:\Temp", PATH_FILE_COUNT)
!lignes de script diverses
:SET &Nbfichiers# = GET_FILESYSTEM(,, PATH_FILE_COUNT)
!lignes de script diverses
:SET &Nbfichiers# = GET_FILESYSTEM(WIN01, "C:\Temp", PATH_FILE_COUNT)
La première exécution de GET_FILESYSTEM renvoie le nombre de fichiers dans le répertoire C:\Temp
(par ex. 50). S'il faut ensuite supprimer des fichiers dans ce dossier, la deuxième utilisation de la fonction
de script continuera à renvoyer 50. Néanmoins, la troisième exécution détermine une nouvelle valeur du
système de fichiers et renvoie un nombre de fichiers inférieur.
Cas 2 :
La fonction de script GET_FILESYSTEM permet d'accéder à une ligne d'informations du système de
fichiers et aux données d'utilisation de l'espace mémoire ou de l'espace disque à l'occurrence d'un
Evènement de type "Système de fichiers". Toutes les informations venant de l'Agent sont ainsi
transmises et peuvent être interrogées individuellement en indiquant la valeur du système de fichiers. La
fonction script est alors exécutée sans indiquer d'hôte ni de chemin, car ces derniers sont déjà définis
dans l'onglet Système de Fichiers de l'Evènement.
OS/400 : Particularités des valeurs du système de fichiers
Pour obtenir des valeurs valides sur le système de fichiers, indiquez à la fois une bibliothèque et un fichier.
z/OS : Particularités des valeurs du système de fichiers
Automation Engine
305
PATH_SPACE_ALLOCATED - l'espace mémoire attribué dans z/OS ne peut pas être déterminé. La
fonction renvoie l'espace mémoire utilisé.
PATH_SPACE_USED - espace mémoire utilisé.
PATH_SPACE_UNUSED - est toujours nul, car cette valeur correspond à la différence entre PATH_
SPACE_ALLOCATED et PATH_SPACE_USED.
Si on indique une désignation GDG, la fonction de script peut déterminer les valeurs de système de
fichiers suivantes : PATH_SPACE_USED et PATH_FILE_COUNT.
Particularités des valeurs de système de fichiers BS2000 par rapport à d'autres systèmes
d'exploitation
Vous pouvez différencier l'espace mémoire alloué de l'espace mémoire utilisé uniquement dans BS2000.
Par exemple, 1000 pages PAM y sont réservées pour un fichier. Mais le contenu du fichier ne comporte
que 100 pages PAM.
Ce qui suit vaut pour d'autres systèmes d'exploitation comme UNIX, VMS et MPE :
PATH_FILE_COUNT - Nombre de fichiers
PATH_FOLDER_COUNT - Nombre de répertoires
PATH_SPACE_USED - Volume total occupé par les fichiers à l'emplacement indiqué
PATH_SPACE_TOTAL - identique à PATH_SPACE_USED et PATH_SPACE_ALLOCATED.
Exemples
Dans l'exemple, la fonction de script GET_FILESYSTEM sert à déterminer le nombre de fichiers
disponibles et à déduire un message correspondant. Comme les deux premiers paramètres ne sont pas
indiqués, il s'agit de l'extrait de script d'un Evènement.
:SET &NOMBRE# = GET_FILESYSTEM(,,PATH_FILE_COUNT)
:SEND_MSG "HENRI","INFORMATIQUE","&NOMBRE# fichiers ont été préparés pour
le traitement."
Dans l'exemple suivant, la fonction de script GET_FILESYSTEM est utilisée dans le script d'un Job.
Toutes les informations disponibles sur le disque sont exécutées et affichées dans le protocole
d'activation.
:SET &E1# = GET_FILESYSTEM(WIN01,"E:\",FILESYSTEM_SPACE_TOTAL,MB)
:SET &E2# = GET_FILESYSTEM(,,FILESYSTEM_SPACE_USED,MB)
:SET &E3# = GET_FILESYSTEM(,,FILESYSTEM_SPACE_FREE,MB)
:PRINT "Espace de stockage d'un lecteur: &E1# MB"
:PRINT "Mémoire utilisée : &E1# MB"
:PRINT "Mémoire libre : &E3# MB"
Les exemples suivants montrent l'utilisation de la fonction de script avec GDG :
!Nombre de fichiers générés dans le Groupe TEST.XXX
:SET &NOMDEFICHIER# = GET_FILESYSTEM("MVSHOST", "TEST.XXX(*)", PATH_FILE_
COUNT)
!Espace total occupé par la génération actuelle
:SET &ESPACE# = GET_FILESYSTEM("MVSHOST", "TEST.XXX(0)", PATH_SPACE_USED)
Rubriques connexes :
Elément de
script
Description
306
Chapter 3 Organisation fonctionnelle
:ON_ERROR
Détermine les réactions associées à certaines erreurs ou certains messages de
script.
Scripts - Traitement d'Evènement
Exemples :
Affichages à l'aide du Cockpit
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.10.3 GET_WIN_EVENT
Fonction script : Détermine les entrées dans le protocole du système, de sécurité et d'application de
Windows lorsqu'un Evènement se produit.
Syntaxe
GET_WIN_EVENT ( Mot clé[, Index] )
Elément de syntaxe
Description/format
Mot clé
Nom du champ dont le contenu doit être déterminé pour cet Evènement.
Format : Nom UC4 ou Variable de script
CATEGORY : catégorie de l'Evènement
EVENT_ID : ID de l'Evènement
INSERT : accède à une certaine partie variable du message.
INSERT_COUNT : détermine le nombre de parties variables du message.
SOURCE : source de l'Evènement
TIMESTAMP : date et heure
TYPE : type d'Evènement
USER : Utilisateur
Index
Accès aux parties variables du message dans le champ "Description" des
détails d'Evènement.
Format : littéral de script, nombre ou Variable de script. Par défaut : "1"
Peut seulement être utilisé conjointement au mot clé INSERT (INSERT,
index).
Remarques
La fonction de script est utilisée dans un Evènement de type "console" pour Windows. Ce type
d'Evènement permet de surveiller l'affichage des Evènements de Windows. Cet Evènement se produit si
une entrée correspondant aux définitions indiquées dans l'onglet "Détail" est détectée dans le protocole du
système, de sécurité ou d'application. Les instructions de traitement de l'onglet ! Script sont
automatiquement exécutées. GET_WIN_EVENT permet maintenant d'accéder à certaines informations
de cette entrée par mot de passe.
Si TYPE est utilisé comme mot clé, les codes retour de la fonction de script sont les suivants : "I" pour
information, "W" pour avertissement, "E" pour erreur, "S" pour surveillance réussie ou "F" pour échec de la
surveillance.
Automation Engine
307
Dans Microsoft Windows, les textes des messages se composent de parties fixes et Variables. La
fonction de script n'indique toutefois que les parties variables d'un message. Lorsque INSERT_COUNT
sert de mot de passe, le nombre de parties variables des messages peut être défini. Lorsqu'INSERT sert
de mot de passe et qu'Index est indiqué, il est possible d'accéder à une partie variable précise du
message. En option, Index peut être indiqué exclusivement pour INSERT. Lorsqu'Index n'est pas indiqué,
la fonction retourne la première partie variable du message.
Exemples
Dans l'exemple, le nombre de parties variables du message est déterminé en premier dans le champ
"Description" du détail d'Evènement. Ce nombre est enregistré dans la Variable de script "&COUNT". Une
boucle de processus est ensuite exécutée dans laquelle les deuxième et troisième parties variables du
message (mot clé INSERT) sont écrites dans le rapport d'activation.
: SET &COUNT# = GET_WIN_EVENT ( "INSERT_COUNT ")
: SET &IDX# = 1
: WHILE &IDX# <= &COUNT#
: SET &INSERT# = GET_WIN_EVENT ( "INSERT ", &IDX# )
:
SET &HELP# = FORMAT ( &IDX# , "000" )
:
PRINT "INSERT[&HELP#] = '&INSERT#'"
:
SET &IDX# = ADD ( &IDX# , 1)
: ENDWHILE
Voici un exemple de message de détail d'Evènement complet : l'Utilisateur "00432233778822#0001" a
établi une connexion avec "T-Online" en utilisant l'appareil "AVMISDN1". Les parties variables du
message sont consignées dans les lignes suivantes du rapport d'activation :
20010117/193135.000 - U0020408 INSERT[002] = 'T-Online'
20010117/193135.000 - U0020408 INSERT[003] = 'AVMISDN1'
Rubriques connexes :
Scripts - Traitement d'Evènement
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11 Statuts et utilisation du système
3.11.1 :DISCONNECT
Instruction de script : Déconnexion du système UC4.
Syntaxe
:DISCONNECT Connexion, Nom
Elément de syntaxe
Description/format
308
Chapter 3 Organisation fonctionnelle
Connexion
Type de connexion.
Format : Littéral de script, Variable de script, chiffre
Valeurs autorisées : "USER", "HOST" et "HOSTGROUP"
"USER" = Connexion d'un Utilisateur ou d'un Groupe Utilisateur.
"HOST" = Connexion d'un Agent.
"HOSTGROUP" = Connexion d'Agents d'un Groupe Agent.
Nom
Nom d'un Utilisateur, d'un Groupe Utilisateur, d'un Agent ou d'un Groupe
Agent.
Format : littéral de script, Variable de script ou chiffre
Remarques
L'instruction de Script permet de se déconnecter du système UC4.
Les Utilisateurs ou les Groupes Utilisateurs doivent appartenir au même Client que l'objet dans le Script
duquel cette instruction est utilisée. Un message de l'Interface Utilisateur informe l'Utilisateur de
l'interruption de la connexion à UC4 Automation Engine et l'invite à se reconnecter. Si l'Utilisateur n'est
pas activement connecté au système UC4, aucune erreur ne se produit. Par contre, si des Utilisateurs ou
Groupes Utilisateurs ne sont pas valides, le traitement de Script s'interrompt avec un message d'erreur.
:DISCONNECT, utilisé avec "HOST" ou "HOSTGROUP", n'arrête pas l'Agent, interrompt
temporairement la connexion. L'Agent se reconnecte à UC4 Automation Engine dès que le prochain signal
de sa vérification est envoyé. L'arrêt de la connexion à un Agent peut présenter un intérêt lorsqu'un
nouveau processus de communication est démarré et que les Agents doivent être redistribués. Pour
arrêter un Agent, utilisez le Script :TERMINATE.
Vous pouvez également indiquer un Groupe Agent au lieu d'un seul Agent. La déconnexion se fait pour
tous les Agents de ce Groupe.
Un Utilisateur doit disposer du droit d'interruption pour l'Utilisateur ou l'Agent pour pouvoir exécuter
cette instruction de script.
Exemple
L'exemple déconnecte l'Utilisateur "DUPONT/UC4" du système UC4.
:DISCONNECT "USER", "DUPONT/UC4"
Cet exemple déconnecte l'Agent WIN01 du système UC4.
:DISCONNECT "HOST", "WIN01"
Dans l'exemple suivant, tous les Agents de base de données sont déconnectés.
:DISCONNECT "HOSTGROUP", "HOSTG_DB_UNIX"
Rubriques connexes :
Elément de
script
Description
:TERMINATE
Instruction permettant de mettre fin à un Agent, un processus de travail ou de
communication
Automation Engine
:SHUTDOWN
309
Quitte un système UC4.
Elément de script - Statuts et utilisation du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.2 :SET_UC_SETTING
Instruction de script : Modifie les paramètres système au cours de l'exécution.
Syntaxe
:SET_UC_SETTING Paramètre, Composants, Valeur
Elément de syntaxe
Description/format
Paramètre
Paramètres système devant être modifiés.
Format : Nom UC4, Littéral de script ou Variable de script
Valeurs autorisées : "WORKLOAD_MAX", "WORKLOAD_MAX_FT",
"WORKLOAD_MAX_JOB", "SET_TRACE", "SERVER_MODE"
"WORKLOAD_MAX" = Quantité maximale de ressources que l'Agent met à
disposition pour les Transferts de Fichiers et les Jobs
"WORKLOAD_MAX_FT" = Quantité maximale de ressources que l'Agent
met à disposition pour les transferts de fichier
"WORKLOAD_MAX_JOB" = Quantité maximale de ressources que l'Agent
met à disposition pour les Jobs
"SET_TRACE" = Options de trace pour les processus de travail d'un
système UC4 ou d'un Agent.
"SERVER_MODE" = Type de processus serveur.
Composants
Composants UC4 dont les paramètres système doivent être modifiés.
Format : littéral de script, variable de script, nom UC4 ou fonction de script
Pour "WORKLOAD_MAX", "WORKLOAD_MAX_FT" et "WORKLOAD_
MAX_JOB" : Nom d'un Agent actif ou d'un Groupe Agent
Pour "SET_TRACE" : nom d'un système UC4 ou d'un Agent
Pour "SERVER_MODE" : Nom du processus serveur.
Valeur
Nouvelle assignation pour le paramètre système.
Format : littéral de script, Variable de script ou fonction de script
Pour "WORKLOAD_MAX", "WORKLOAD_MAX_FT" et "WORKLOAD_
MAX_JOB" : Valeur entre "-1" et "100000" ou "UNLIMITED".
Attention : les valeurs supérieures à 100000 sont interprétées comme
"UNLIMITED" !
Pour "SET_TRACE" : options de trace à 16 caractères.
Pour "SERVER_MODE" : type de serveur Les valeurs autorisées sont "D"
pour la commutation au processus de dialogue et "W" pour la commutation au
processus de travail.
Veuillez noter qu'un processus de travail ne peut pas être changé en
processus de dialogue lorsqu'il effectue un rôle de serveur !
310
Chapter 3 Organisation fonctionnelle
Remarques
L'instruction de script :SET_UC_SETTING permet de modifier trois paramètres système. Les
modifications sont valables jusqu'à l'attribution d'une nouvelle valeur ou lorsque les processus serveur ou
l'Agent sont terminés.
L'autorisation "Modification pendant l'exécution" et le privilège "Créer une information de diagnostic"
sont nécessaires pour cela.
Le script permet d'ouvrir les Transactions ouvertes dans la base de données UC4.
Si vous modifiez les options de trace des processus de travail (WP), les modifications sont valables
pour tous ces processus. Il n'est pas possible de les modifier pour un seul de ces processus.
Vous devez modifier les options de trace pour chaque processus de communication (CP),
individuellement.
Modification des options de trace
La mise en œuvre d'options de trace permet de consigner dans un cas exceptionnel, à partir d'un script, le
comportement du processus de travail et de l'Agent jusqu'au niveau du système. Pour la trace, il ne faut
pas les arrêter. Comme cela peut entraîner d'importants volumes de données, il peut y avoir une perte des
performances. La mise en œuvre d'options de trace ne devrait être effectuée qu'en rapport étroit avec le
support technique.
Pour modifier les options de trace, il faut indiquer le paramètre SET_TRACE. Dans les options de trace, la
valeur est une chaîne de 16 caractères. Chaque caractère représente un indicateur de trace spécifique, par
exemple le premier caractère d'une trace TCP/IP. L'ordre d'exécution des indicateurs de trace est
identique à celui utilisé dans la boîte de dialogue "Propriétés" de la Supervision Système pour le processus
serveur et les Agents.
Attention : lors du redémarrage d'un seul processus de travail, celui-ci doit utiliser les options de trace
définies dans le fichier INI. Toutes les autres options utilisent la valeur définie dans cette instruction de
script, qui doit également être redémarrée.
Exemples
Dans le premier exemple, la quantité maximale de ressources que l'Agent WIN01 met à disposition pour
les Jobs et les Transferts de Fichiers est définie sur 1000. Le résultat s'affiche pour vérification dans le
protocole d'activation.
:SET_UC_SETTING WORKLOAD_MAX, WIN01, 1000
:SET&RET# = GET_UC_SETTING(WORKLOAD_MAX_JOB, WIN01)
:PRINT&RET#
Dans le deuxième exemple, le nom du système UC4 est déterminé et la trace TCP/IP est activée pour son
processus de travail.
:SET&TRC# = GET_UC_SYSTEM_NAME()
:SET_UC_SETTINGSET_TRACE, &TRC#,"1000000000000000"
Dans l'exemple suivant, le processus serveur "UC4#WP003" devient un processus de dialogue, lorsque
celui-ci est actif.
:IFSYS_SERVER_ALIVE("UC4#WP003") = "Y"
:
SET_UC_SETTING"SERVER_MODE", "UC4#WP003", "D"
:ELSE
:
SEND_MSG"ADMIN","UC4","Le processus de travail UC4#WP003 n'est pas
Automation Engine
311
actif !"
:ENDIF
Rubriques connexes :
Elément de script
Description
GET_UC_SETTING
Lit les paramètres système actuels.
Elément de script - Statuts et utilisation du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.3 :SHUTDOWN
Instruction de script : Quitte un système UC4.
Syntaxe
:SHUTDOWN UC4
Elément de syntaxe
Description/format
UC4
Constante devant être indiquée pour quitter le système UC4.
Format : Nom UC4, Littéral de script ou Variable de script
Remarques
Cette instruction de Script permet de terminer tous les processus de travail et de communication du
système UC4.
Pour des raisons de sécurité, par exemple pour éviter toute confusion avec le JCL, l'instruction de Script
doit toujours être utilisée en combinaison avec les constantes UC4.
On utilise :TERMINATE pour terminer tous les processus de travail et de communication ou les Agents.
Un Utilisateur doit disposer du droit d'interruption pour le processus serveur afin de pouvoir exécuter
cette instruction de Script.
Exemple
Dans l'exemple, on quitte le système UC4 lorsque l'heure actuelle du jour est après 20 heures.
:IF SYS_TIME() > "200000"
:
SHUTDOWN UC4
:ENDIF
Rubriques connexes :
312
Chapter 3 Organisation fonctionnelle
Elément de
script
Description
:DISCONNECT
Déconnexion du système UC4.
:TERMINATE
Instruction permettant de mettre fin à un Agent, un processus de travail ou de
communication
Elément de script - Statuts et utilisation du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.4 :TERMINATE
Instruction de script : Instruction permettant de mettre fin à un Agent, les Agents d'un groupe d'Agents,
un processus de travail ou de communication
Syntaxe
:TERMINATE [Connexion,] Nom
Elément de syntaxe
Description/format
Connexion
Type de connexion.
Format : Nom UC4, Littéral de script ou Variable de script
Valeurs autorisées : "HOST" (Valeur par défaut), "HOSTGROUP" et
"SERVER"
"HOST" = Agent
"HOSTGROUP" = Agents d'un Groupe Agent
"SERVER" = processus de travail ou de communication.
Nom
Nom d'un Agent, d'un Groupe Agent, d'un processus de travail ou de
communication.
Format: Littéral de script ou Variable de script
Remarques
L'instruction de script permet d'arrêter des Agents ainsi que des processus de travail et de communication.
Le paramètre Connexion ne doit pas être indiqué lorsque la fin d'un Agent doit être exécutée. Il faut
cependant définir une virgule pour les paramètres qui ne sont pas utilisés.
Vous pouvez également indiquer un Groupe Agent au lieu d'un seul Agent. L'arrêt se fait pour tous les
Agents de ce Groupe qui appartiennent à se groupe.
Si la connexion à un Agent est brièvement interrompue, il est conseillé d'utiliser le script :DISCONNECT.
L'Agent se reconnecte au Serveur dès que le prochain signal pour la vérification de l'Agent est envoyé.
:SHUTDOWN vous permet d'arrêter tous les processus de travail et de communication du système UC4.
Un Utilisateur doit disposer du droit d'interruption pour le processus serveur ou l'Agent pour exécuter
cette instruction de script.
Automation Engine
313
Exemples
Dans l'exemple, un processus de travail est arrêté.
:TERMINATE SERVER,"UC4#WP001"
Dans ce cas, l'Agent "WIN21" est arrêté. Le type de connexion est spécifié pour l'entrée.
:TERMINATE ,"WIN21"
Rubriques connexes :
Elément de script
Description
:DISCONNECT
Déconnexion du système UC4.
:SHUTDOWN
Quitte un système UC4.
Elément de script - Statuts et utilisation du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.5 CHANGE_LOGGING
Fonction script : Changement du fichier log.
Syntaxe
CHANGE_LOGGING (composants)
Elément de syntaxe
Description/format
Composants
Nom des composants dont le fichier de logging doit être changé.
Format : Nom UC4 ou Variable de script
Vous pouvez indiquer les composants suivants :
l
l
l
l
Processus de communication
Processus de travail
Agent
Groupe Agent
Code retour
"0" - Le changement du fichier de logging est réussi.
"20223" - Le Groupe Agent saisi n'existe pas.
"20722" - Le processus serveur, l'Agent ou le Groupe Agent saisis n'existent pas ou sont inactifs.
Remarques
Cette fonction de Script permet de forcer un changement de fichier de logging.
Avec la Variable UC4 UC_SYSTEM_SETTINGS, l'administrateur UC4 peut définir, sur l'ensemble du
système, la durée en jours ou la taille en mégaoctets au-delà de laquelle les fichiers de logging doivent être
314
Chapter 3 Organisation fonctionnelle
changés. Il est possible de procéder à un changement temporaire du fichier log dans l'onglet "Propriétés"
de la Supervision Système. Ces modifications s'appliquent dans ce cas jusqu'au prochain redémarrage.
L'emplacement d'enregistrement des fichiers de logging est défini dans le fichier INI du Serveur ou de
l'Agent.
Si vous spécifiez un Groupe Agent, le fichier de logging de tous les Agents correspondants est changé.
Aucun numéro d'erreur n'est renvoyé en tant que code retour si l'un des Agents n'est pas actif et si son
fichier de logging ne peut être changé.
Veuillez noter qu'un changement de log d'un processus de travail s'applique automatiquement à tous
les processus de travail.
Exemple
Dans l'exemple, le fichier de logging est changé pour tous les processus de travail.
:SET &RET# = CHANGE_LOGGING ("UC4#WP001")
Rubriques connexes :
Elément de script - Statuts et utilisation du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.6 GET_UC_SERVER_NAME
Fonction script : détermination du nom du processus de travail dans lequel le Script est exécuté.
Syntaxe
GET_UC_SERVER_NAME ()
Code retour
Nom du processus de travail.
Exemple
Dans l'exemple, le nom du processus de travail (par ex. "UC4#WP001") est déterminé et affiché comme
résultat dans le protocole d'activation.
: SET &RET# = GET_UC_SERVER_NAME ()
: PRINT &RET#
Rubriques connexes :
Elément de script - Statuts et utilisation du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
Automation Engine
315
3.11.7 GET_UC_SETTING
Fonction script : Lit les paramètres système actuels.
Syntaxe
GET_UC_SETTING(paramètres,composants, option)
Elément de syntaxe
Description/format
Paramètre
Paramètres système devant être lus.
Format : Nom UC4, Littéral de script, Variable de script ou
Valeurs autorisées : "WORKLOAD_ACTUAL_FT", "WORKLOAD_
ACTUAL_JOB", "WORKLOAD_MAX_FT", "WORKLOAD_MAX_JOB",
"SET_TRACE", "SERVER_MODE", "SERVER_OPTIONS", "QUEUE"
"WORKLOAD_ACTUAL_FT" = Quantité de ressources actuellement
occupées mises à disposition par l'Agent pour les Transferts de Fichiers
"WORKLOAD_ACTUAL_JOB" = Quantité de ressources actuellement
occupées mises à disposition par l'Agent pour les Jobs
"WORKLOAD_MAX_FT" = Quantité maximale de ressources mises à
disposition par l'Agent pour les Transferts de Fichiers
"WORKLOAD_MAX_JOB" = Quantité maximale de ressources mises à
disposition par l'Agent pour les Jobs
"SET_TRACE" = Options de trace pour les processus de travail d'un
système UC4
"SERVER_MODE" = Type de processus serveur
"SERVER_OPTIONS" = Paramètres du serveur "QUEUE" = Paramètre/valeur d'un objet Queue
Composants
Composants UC4 dont les paramètres système doivent être lus, en fonction
du paramètre Paramètre.
Format : nom UC4, littéral de script ou Variable de script
Pour "WORKLOAD_ACTUAL_FT", "WORKLOAD_ACTUAL_JOB",
"WORKLOAD_MAX_FT" et "WORKLOAD_MAX_JOB" : Nom de l'Agent.
Pour "SET_TRACE" : nom du système UC4
Pour "SERVER_MODE" : nom du processus serveur.
Pour "SERVER_OPTIONS", aucun composant n'est indiqué.
Pour "QUEUE" : nom de l'objet Queue.
Option
Option/statut de l'objet Queue indiqué dont la valeur doit être lue.
Format : nom UC4, littéral de script ou Variable de script
Ce paramètre doit uniquement être indiqué si la valeur d'un objet Queue doit
être lue (Paramètre = QUEUE).
Valeurs autorisées : "ACTIVE_COUNT", "CONSIDER_ERT", "MAX_
SLOTS", "PRIORITY", "STATE"
"ACTIVE_COUNT" = Nombre de slots de queue occupés
"CONSIDER_ERT" = Prise en charge de l'ERT pour les exceptions
"MAX_SLOTS" = Slot de queue maximum
"PRIORITY" = Priorité actuelle (en cas d'exceptions, la valeur peut diverger
de la priorité Standard)
"STATE" = Statut queue actuel
316
Chapter 3 Organisation fonctionnelle
Codes retour
Pour "WORKLOAD_ACTUAL_FT" et"WORKLOAD_ACTUAL_JOB" :
Quantité de ressources actuellement occupées mises à disposition par l'Agent pour les Transferts de
Fichiers ou les Jobs.
"UNKNOWN" - Aucune limitation des ressources pour l'Agent.
Pour "WORKLOAD_MAX_FT" et "WORKLOAD_MAX_JOB":
Quantité maximale de ressources mises à disposition par l'Agent pour les Transferts de Fichiers ou les
Jobs
"UNLIMITED" - Les ressources sont illimitées.
Pour "SET_TRACE" :
Options de trace des processus de travail.
"0" - Aucune option de trace n'a été définie.
Pour "SERVER_MODE" :
"C" - processus de communication (CP)
"P" - processus de travail primaire (PWP)
"W" - processus de travail (WP)
"D" - processus de dialogue (DWP)
"N" - processus non-stop (NWP)
" " - le processus serveur n'est pas actif.
Pour "SERVER_OPTIONS" :
chaîne de caractères contenant les options du serveur.
Pour "QUEUE" - "ACTIVE_COUNT" :
nombre de slots de queue utilisés
Pour "QUEUE" - "CONSIDER_ERT" :
"1" - L'ERT est pris en compte au démarrage des tâches en rapport avec les exceptions queue
"0" - L'ERT n'est pas pris en compte
Pour "QUEUE" - "MAX_SLOTS" :
nombre maximal de slots de queue
"UNLIMITED" - Les slots de queue sont illimités
Pour "QUEUE" - "PRIORITY" :
Priorité de queue actuelle
Pour "QUEUE" - "STATE":
"0" = GO
"1" = STOP
Remarques
Les options de trace peuvent être définies dans la catégorie "Serveur" de Supervision Système. 16
domaines (par ex. TCP/IP) sont disponibles dans ce cadre. La fonction de script fournit un nombre à
16 chiffres servant de code retour, chaque numéro correspondant à l'un de ces domaines.
L'administrateur UC4 définit les options du serveur dans la variable UC_SYSTEM_SETTINGS d'UC4, à
l'aide de la Clef SERVER_OPTIONS. La fonction de script vous indique la chaîne de caractères
complète. Utilisez le script MID, SUBSTR ou STR_CUT pour lire une option spéciale du serveur.
Le script permet d'ouvrir les Transactions ouvertes dans la base de données UC4.
Automation Engine
317
Exemple
L'exemple détermine la quantité maximale de ressources que l'Agent WIN01 met à disposition pour des
Jobs. Le résultat s'affiche dans le protocole d'activation.
:SET &RET# = GET_UC_SETTING(WORKLOAD_MAX_JOB, "WIN01")
:PRINT &RET#
Le deuxième exemple lit les options de trace des processus de travail du système UC4 nommé
"UC4PROD".
:SET &RET# = GET_UC_SETTING(SET_TRACE, "UC4PROD")
L'exemple suivant détermine le type de processus serveur "UC4#WP003".
:SET &RET# = GET_UC_SETTING(SERVER_MODE, "UC4#WP003")
Les lignes de script suivantes lisent le troisième paramètre à partir des options du serveur, qui détermine si
les enregistrements statistiques doivent être vérifiés en cas de démarrage à froid.
:SET &RET# = GET_UC_SETTING(SERVER_OPTIONS)
:SET &OPTION# = SUBSTR(&RET#,3,1)
L'exemple suivant présente la détermination du statut actuel d'un objet queue et l'affiche dans le protocole
d'activation :
:SET &RET# = GET_UC_SETTING(QUEUE,QUEUE.JOBS,STATE)
:IF &RET# = 0
: PRINT "La queue QUEUE.JOBS est active"
:ELSE
: PRINT "La queue QUEUE.JOBS est interrompue"
:ENDIF
Dans l'exemple suivant, le maximum de slots actuel est lu à partir d'un objet Queue et écrit dans le rapport
d'activation.
:SET &RET# = GET_UC_SETTING(QUEUE,QUEUE.JOBS,MAX_SLOTS)
: PRINT "Queue QUEUE.JOBS - Max Slots : &RET#"
Rubriques connexes :
Elément de script
Description
:SET_UC_SETTING
Modifie les paramètres système au cours de l'exécution.
Elément de script - Statuts et utilisation du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.8 GET_UC_SYSTEM_NAME
Fonction script : Détermine le nom du système UC4.
Syntaxe
GET_UC_SYSTEM_NAME ()
318
Chapter 3 Organisation fonctionnelle
Code retour
Nom du système UC4
Exemple
Dans l'exemple, le nom du système UC4 (par ex. "UC4PROD") est déterminé et affiché comme résultat
dans le protocole d'activation.
: SET &RET# = GET_UC_SYSTEM_NAME ()
: PRINT &RET#
Rubriques connexes :
Elément de script - Statuts et utilisation du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.9 ILM
Fonction script : Contrôle la fonctionnalité ILM.
Installation
[Installation] [Statut] [Démarrage et arrêt] [Désactivation] [Contrôle] [Suppression d'une partition]
Syntaxe
ILM (INSTALLED)
Elément de syntaxe
Description/format
INSTALLED
Demande si la base de données UC4 a été partitionnée avec ILM
Remarques
La fonction script renvoie les codes retour suivants :
"Y" - Le partitionnement a été installé avec ILM
"N" - La base de données UC4 n'a pas été partitionnée
Exemple
:SET &ILM# =ILM(INSTALLED)
Statut
[Installation] [Statut] [Démarrage et arrêt] [Désactivation] [Contrôle] [Suppression d'une partition]
Automation Engine
319
Syntaxe
ILM (ACTIVE)
Elément de syntaxe
Description/format
ACTIVE
Demande si ILM est actif
Remarques
La fonction script renvoie les codes retour suivants :
"Y" - ILM est actif. Autrement dit, de nouvelles partitions ont été créées et des désactivations ont eu lieu
(ne concerne que le Serveur MS SQL Server).
"N" - ILM n'est pas actif, aucun changement de partition n'a lieu, ni aucune désactivation (cette dernière ne
concerne que le Serveur MS SQL Server).
Exemple
:SET &ILM# =ILM(ACTIVE)
Démarrage et arrêt
[Installation] [Statut] [Démarrage et arrêt] [Désactivation] [Contrôle] [Suppression d'une partition]
Syntaxe
ILM (START)
ILM (STOP)
Elément de syntaxe
Description/format
START
Active ILM
STOP
Désactive ILM
Remarques
Si ILM est actif, de nouvelles partitions sont créées et des désactivations ont lieu (ne concerne que le
Serveur MS SQL Server).
Si ILM n'est pas actif, aucun changement de partition n'a lieu, ni aucune désactivation (cette dernière ne
concerne que le Serveur MS SQL Server).
La fonction script renvoie la valeur "0", lorsque le démarrage ou l'arrêt ont été correctement exécutés, ou le
numéro de l'erreur qui s'est produite.
Exemple
ILM est désactivé.
320
Chapter 3 Organisation fonctionnelle
:SET &ILM# =ILM(STOP)
Désactivation
[Installation] [Statut] [Démarrage et arrêt] [Désactivation] [Contrôle] [Suppression d'une partition]
Syntaxe
ILM (SWITCHOUT [, Vérification])
Elément de syntaxe
Description/format
SWITCHOUT
Déclenche une désactivation pour la partition la plus ancienne.
Vérification
Paramètre indiquant si une vérification doit être exécutée avant la
désactivation
Valeurs autorisées : "CHECK" (valeur par défaut) et "NOCHECK"
"CHECK" - Le système vérifie avant la désactivation si la partition concernée
contient des enregistrements de Tâches encore actives. Si tel est le cas, la
désactivation n'est pas exécutée.
"NOCHECK" - La désactivation est exécutée sans vérification préalable.
Remarques
Les désactivations appartiennent au Serveur MS SQL Server. L'exécution de cette fonction n'est donc pas
pertinente pour les bases de données Oracle.
Attention : la fonction script déclenche une désactivation, mais elle n'y met pas fin !
La fonction script renvoie la valeur "0", lorsque la désactivation a été correctement exécutée, ou le numéro
de l'erreur qui s'est produite.
Attention : le nombre de partitions en ligne que l'administrateur UC4 définit dans la Variable UC4 UC_
ILM_SETTINGS avec la clé ONLINE_PARTITIONS n'est pas pris en compte !
Exemple :
Il existe 4 partitions en ligne. En exécutant plusieurs fois la fonction script, vous pouvez obtenir qu'il ne
reste plus que 3, 2 ou 1 partition en ligne.
La désactivation ne peut pas être effectuée pour la partition actuelle. Il doit toujours y avoir au moins
une partition en ligne.
Une désactivation ne peut être effectuée sans entraîner la perte de données que si la partition ne
contient aucun enregistrement de Tâches encore actives.
Attention : une désactivation forcée malgré des Tâches actives ne doit être effectuée qu'après accord
avec le support UC4 !
Exemple
Une vérification a lieu avant la désactivation, car la valeur par défaut du second paramètre est "CHECK".
Automation Engine
321
:SET &ILM# =ILM(SWITCHOUT)
Vérification
[Installation] [Statut] [Démarrage et arrêt] [Désactivation] [Contrôle] [Suppression d'une partition]
Syntaxe
ILM (CHECK, numéro de partition)
Elément de syntaxe
Description/format
CHECK
Vérifie si des objets actifs sont disponibles dans la partition indiquée.
Numéro de partition
Numéro de la partition
Format : Littéral de script ou Variable de script
Remarques
La fonction de script indique "0" si aucun objet actif n'est disponible dans la partition indiquée.
Exemple
La partition "25" est vérifiée.
:SET &ILM# =ILM(CHECK, "25")
Suppression d'une partition
[Installation] [Statut] [Démarrage et arrêt] [Désactivation] [Contrôle] [Suppression d'une partition]
Syntaxe
ILM (DROP, Partition [, Contrôle])
Elément de syntaxe
Description/format
DROP
Supprime la partition indiquée
Partition
Nom ou numéro de la partition
Format : littéral de script ou Variable de script
Lorsque vous indiquez le nom d'une table de Staging individuelle (MS SQL
Server), le processus de suppression n'a pas lieu avec l'Utilisateur de la base
de données ILM. Au contraire, l'Utilisateur de la base de données utilisé est
celui que vous avez défini dans le fichier INI de l'UC4 Automation Engine
dans la section [ODBC]. Ce dernier doit disposer des droits requis !
322
Chapter 3 Organisation fonctionnelle
Vérification
Paramètre déterminant si une vérification doit être effectuée avant la
suppression (uniquement pour les bases de données Oracle)
Valeurs autorisées : "CHECK" (valeur par défaut) et "NOCHECK"
"CHECK" - Le système vérifie avant la suppression si la partition concernée
contient des enregistrements de Tâches encore actives. Si tel est le cas, le
processus de suppression n'est pas exécuté.
"NOCHECK" - Le processus de suppression est exécuté sans vérification
préalable.
Remarque
Le paramètre Vérification n'est pas pertinent pour MS SQL Server, car seules des tables de Staging
peuvent ici être supprimées. La vérification de ces tables a déjà eu lieu lors de la désactivation.
Un dépôt ne peut être effectué sans entraîner la perte de données que si la partition ne contient aucun
enregistrement de Tâches encore actives.
La fonction script indique "0" si la partition indiquée a pu être supprimée avec succès.
Exemple
La partition "25" est supprimée.
:SET &ILM# =ILM(DROP, "25")
Rubriques connexes :
Elément de script - Statuts et utilisation du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.10 MODIFY_SYSTEM
Fonction script : Exécute des actions ServiceManager ou des modifications de Queue.
Informations générales
Le script couvre deux Tâches différentes :
1. l'exécution d'actions d'un ServiceManager qui est connecté au système UC4.
2. la modification de valeurs d'objets Queue ou le changement de leur statut (GO/STOP).
L'action de la fonction script à exécuter dépend des paramètres indiqués. A ce sujet, voir les descriptions
de syntaxe ci-dessous.
Veuillez noter que le démarrage de processus Serveur et d'Agents avec le script n'est possible que
lorsqu'un ServiceManager correctement configuré et connecté au système UC4 est disponible. Dans ce
cadre, tenez compte des paramètres dans l'objet Agent ou. Serveur.
Codes retour
Automation Engine
323
"0" - L'action définie de la fonction script a été exécutée avec succès.
"11901" - L'objet Queue indiqué est introuvable dans le Client.
"20836" - Une valeur non valide a été indiquée pour le paramètre MODE.
"20837" - Indication d'une valeur non valide pour la priorité ou les Slots max. de l'objet Queue.
"11677" - ServiceManager n'a pas pu être appelé : aucun CP démarré.
"11678" - Serveur ou Agent non démarré.
"11679" - Requête réussie du ServiceManager.
"11680" - Aucune connexion n'a pu être établie au ServiceManager ou le processus indiqué est
introuvable dans le ServiceManager.
"11681" - ServiceManager n'a pas pu être appelé, car le type d'hôte indiqué n'est pas pris en charge.
"11682" - ServiceManager n'a pas pu être appelé : l'Agent / le processus Serveur indiqué est
introuvable.
"11683" - ServiceManager n'a pas pu être appelé, car le serveur n'est pas connecté au ServiceManager
indiqué ou que la même requête est déjà exécutée.
Queue
[ Queue ] [ ServiceManager ]
Syntaxe
MODIFY_SYSTEM(Action, Queue , Valeur)
Elément de syntaxe
Description/format
Action
Détermine quelle modification doit être apportée à des objets Queue.
Format : littéral de script ou Variable de script
Valeurs autorisées : "MODE", "MAX_SLOTS" ou "PRIORITY"
"MODE" = statut de la Queue, démarrage / arrêt de l'exécution de Tâches de
Queue
"MAX_SLOTS" = nombre maximal de Tâches exécutées en parallèle (Max.
Slots)
"PRIORITY" = priorité de la Tâche
Queue
Nom de l'objet Queue à modifier.
Format : littéral de script ou Variable de script
Valeur
Valeur pour le paramètre à modifier / statut (Action).
Format : Littéral de script ou Variable de script
Valeurs autorisées, en fonction de la modification sélectionnée :
"MODE" : "GO" ou "STOP"
"MAX_SLOTS" : nombre de "0" à "99999" ou "UNLIMITED"
"PRIORITY" : nombre de "0" à "255"
324
Chapter 3 Organisation fonctionnelle
Remarques
Si le statut des objets Queue (Start/Stop) est modifié à l'aide de l'élément de script (action : MODE), le
nouveau statut s'applique jusqu'à la prochaine modification. La modification de la priorité et des slots
Queue maximum reste inchangée tant que les valeurs ne sont pas modifiées par une exception ou
manuellement par un utilisateur.
Si les slots maximum des objets Queue passent à "UNLIMITED", il n'y a pas de limitation pour les
Tâches exécutées en parallèle.
Exemple
Dans l'exemple suivant, le statut de l'objet Queue "QUEUE.JOBS" est défini sur "GO".
:SET&RET# = MODIFY_SYSTEM("MODE", "QUEUE.JOBS", "GO")
:IF&RET# = "0"
: PRINT"Le traitement de l'objet Queue QUEUE.JOBS a été activé avec
succès."
:ELSE
: PRINT"QUEUE.JOBS: Erreur lors de la modification du statut sur GO."
:ENDIF
ServiceManager
[ Queue ] [ ServiceManager ]
Syntaxe
MODIFY_SYSTEM(Action, Nom[, Mode Serveur])
Elément de syntaxe
Description/format
Action
Détermine l'action qui doit être exécutée pour les Agents, les processus
Serveur ou le système UC4.
Format : littéral de script ou Variable de script
Valeurs autorisées : "STARTUP", "TERMINATE", "CHANGE_MODE",
"DISCONNECT" ou "SHUTDOWN"
"STARTUP" = Démarrage d'un Agent ou d'un processus Serveur
"TERMINATE" = Fermer l'Agent ou le processus Serveur.
"SHUTDOWN" = Arrêt de tout le système UC4.
"CHANGE_MODE" = Modification du mode d'un processus de travail
Serveur (WP).
"DISCONNECT" = Coupure et remise en place de la connexion de l'Agent.
Nom
Nom de l'Agent ou du processus Serveur qui doit être démarré, fermé ou dont
le mode doit être modifié.
Format : Littéral de script ou Variable de script
Automation Engine
Mode Serveur
325
Mode sur lequel le WP indiqué doit être modifié.
Format : Littéral de script ou Variable de script
Ce paramètre ne doit être indiqué que lorsque le mode d'un WP est modifié
(action = CHANGE_MODE).
Valeurs autorisées :
"D": Processus de dialogue
"W" : Processus de travail
Remarques
Le script MODIFY_SYSTEM permet aussi de démarrer ou de fermer des processus Serveur ou des
Agents, ou de modifier le mode des processus de travail Serveur.
L'action "STARTUP" n'est possible que lorsqu'un ServiceManager est disponible et que l'Agent ou le
processus Serveur à démarrer a été correctement configuré. A ce sujet, voir les paramètres dans l'onglet
Attributs de l'objet Agent ou Serveur.
Pour arrêter le système UC4 avec "SHUTDOWN", la valeur "UC4" doit être utilisée pour le paramètre
Name (voir : :SHUTDOWN).
Le paramètre Mode Serveur doit être indiqué lorsque le mode d'un processus de travail Serveur doit être
modifié (action : "CHANGE_MODE"). L'utilisation du paramètre Mode Serveur n'est pas valide avec les
actions "STARTUP", "TERMINATE", "DISCONNECT" et "SHUTDOWN".
Exemple
Fermeture de l'Agent "WIN01" :
:SET&ACT# = MODIFY_SYSTEM("TERMINATE", "WIN01")
Rubriques connexes :
Elément de script
Description
:SHUTDOWN
Quitte un système UC4.
SYS_HOST_ALIVE
Vérifie si un hôte particulier est actif.
SYS_SERVER_ALIVE
Fonction permettant de vérifier si un processus serveur particulier est
actif
TOGGLE_SYSTEM_
STATUS
Arrête ou démarre le traitement automatique de l'intégralité d'un Client.
Elément de script - Lecture ou modification d'objets
Exemples
Alerte avec texte du message variable
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.11 SYS_BUSY_01
Fonction du Script : indique l'utilisation en pourcentage d'UC4 Automation Engine pendant la dernière
minute.
326
Chapter 3 Organisation fonctionnelle
Syntaxe
SYS_BUSY_01()
Code retour
Utilisation en pourcentage des processus serveur du système UC4.
Remarques
Vous pouvez, avec la fonction de Script SYS_INFO déterminer la valeur en pourcentage de la charge de
travail d'UC4 Automation Engine.
Exemple
L'utilisation des processus serveur est demandée. Si elle est supérieure à 80 %, un message est envoyé à
un Utilisateur.
:IF SYS_BUSY_01() > 80
:
SEND_MSG BU,UC4,"La charge de travail du Serveur dépasse 80 %"
:ENDIF
Rubriques connexes :
Elément de
script
Description
SYS_BUSY_10
Indique l'utilisation en pourcentage d'UC4 Automation Engine pendant les 10
dernières minutes.
SYS_BUSY_60
Indique l'utilisation en pourcentage d'UC4 Automation Engine pendant la dernière
heure.
Elément de script - Statuts et utilisation du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.12 SYS_BUSY_10
Fonction du Script : indique l'utilisation en pourcentage d'UC4 Automation Engine pendant les 10
dernières minutes.
Syntaxe
SYS_BUSY_10()
Code retour
Utilisation en pourcentage des processus serveur du système UC4.
Automation Engine
327
Remarques
Vous pouvez, avec la fonction de Script SYS_INFO déterminer la valeur en pourcentage de la charge de
travail d'UC4 Automation Engine.
Exemple
L'utilisation des processus serveur est demandée. Si elle est supérieure à 80 %, un message est envoyé à
un Utilisateur.
:IF SYS_BUSY_10() > 80
:
SEND_MSG BU,UC4,"La charge de travail du Serveur dépasse 80 %"
:ENDIF
Rubriques connexes :
Elément de
script
Description
SYS_BUSY_01
Indique l'utilisation en pourcentage d'UC4 Automation Engine pendant la dernière
minute.
SYS_BUSY_60
Indique l'utilisation en pourcentage d'UC4 Automation Engine pendant la dernière
heure.
Elément de script - Statuts et utilisation du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.13 SYS_BUSY_60
Fonction du Script : indique l'utilisation en pourcentage d'UC4 Automation Engine pendant la dernière
heure.
Syntaxe
SYS_BUSY_60()
Code retour
Utilisation en pourcentage des processus serveur du système UC4.
Remarques
Vous pouvez, avec la fonction de Script SYS_INFO déterminer la valeur en pourcentage de l'utilisation en
pourcentage des processus serveur.
328
Chapter 3 Organisation fonctionnelle
Exemple
L'utilisation d'UC4 Automation Engine est demandée. Si elle est supérieure à 80 %, un message est
envoyé à un Utilisateur.
:IF SYS_BUSY_60() > 80
:
SEND_MSG BU,UC4,"La charge de travail du Serveur dépasse 80 %"
:ENDIF
Rubriques connexes :
Elément de
script
Description
SYS_BUSY_01
Indique l'utilisation en pourcentage d'UC4 Automation Engine pendant la dernière
minute.
SYS_BUSY_10
Indique l'utilisation en pourcentage d'UC4 Automation Engine pendant les 10
dernières minutes.
Elément de script - Statuts et utilisation du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.14 SYS_HOST_ALIVE
Fonction script : Vérifie si un hôte particulier est actif.
Syntaxe
SYS_HOST_ALIVE(Hôte [, connexion])
Elément de syntaxe
Description/format
Hôte
Nom du processus serveur dont l'activité doit être vérifiée.
Format : Nom UC4 ou Variable de script
Connexion
Nom d'un objet Connexion R3 ou DB servant à vérifier la disponibilité du
système SAP ou de la base de données.
Format : nom UC4 ou Variable de script
Entrez dans SAP un objet Connexion que vous avez défini dans l'onglet
Agent de l'objet Agent !
Si un objet Connexion BD est indiqué, le paramètre Hôte est optionnel !
Ce paramètre peut uniquement être utilisé si un Agent SAP ou un Agent de
base de données est indiqué pour l'Hôte ! Il n'est toutefois pas vérifié si
l'Agent de base de données pour la résolution des variables SQL a été
démarré.
Codes retour
Automation Engine
329
Lors de la saisie d'un hôte :
"Y" - L'Agent est actif
"N" - L'Agent est inactif
Lors de l'entrée d'un objet Connexion.
"Y" - L'Agent est actif et le système SAP ou la base de données est disponible.
"N" - L'Agent est actif. Par contre, aucune connexion possible vers le système SAP ou la base de
données.
"?" - L'Agent est inactif. Impossible de savoir si le système SAP ou la base de données est disponible.
Remarques
Agents Système d'exploitation (SE)
La fonction de script vérifie si l'Agent indiqué est actif. Le paramètre Connexion ne peut être donné.
Agents ERP
La valeur "N" est renvoyée pour les Agents ERP PeopleSoft, Oracle Applications et Siebel quand l'Agent
est actif, mais Enterprise Business Solution n'est pas disponible.
Pour les Agents SAP, vous avez le choix. Entrez simplement le paramètre Host si vous désirez vérifier le
statut d'activité de l'Agent. Si vous désirez savoir si le système SAP est disponible, entrez l'objet
Connexion SAP correspondant.
Attention, l'Agent SAP se connecte seulement si besoin est (HTTP) ou se déconnecte après une
inutilisation prolongée des connexions (ABAP). Si aucune connexion vers le système SYP n'existe lors de
l'appel de SYS_HOST_ALIVE, une connexion est alors établie pour vérifier si celui-ci est disponible.
Faites attention aux remarques importantes suivantes :
l
l
l
l
Si le système SAP n'est pas disponible, vous devrez probablement vous attendre à un long
dépassement de délai.
Même si une connexion est déjà établie, une autre doit l'être aussi, car la première est déjà en cours
d'utilisation. Cela permet de vérifier que le système SYP réagit vraiment.
Cette nouvelle connexion peut éventuellement entraîner des problèmes si : La limite CPIC pour
SAP est dépassée Dans ce cas, SYS_HOST_ALIVE renvoie le code retour "N", même si des Jobs
sont en cours d'exécution via des connexions établies.
La modification d'un objet Connexion est effective dès le redémarrage de l'Agent SAP.
Agent de base de données
Comme pour SAP, vous avez la possibilité d'indiquer uniquement l'Agent ou en plus un objet Connexion
(de type : base de données). La saisie d'un objet Connexion vous permet également de vérifier la
disponibilité de la base de données concernée.
Exemple
L'exemple vérifie que l'Agent Windows "WIN21" est actif. Dans le cas contraire, un message est envoyé à
l'administrateur.
:IF SYS_HOST_ALIVE("WIN21") = "N"
:
SEND_MSG"ADMIN","UC4","L'Agent WIN21 est inactif !"
:ENDIF
Le second exemple cherche à savoir si le système SAP est disponible pour l'Agent SAP01.
330
Chapter 3 Organisation fonctionnelle
:SET &STATUS#= SYS_HOST_ALIVE("SAP01", "CONN.R3.ECC.ABAP")
Rubriques connexes :
Elément de script
Description
SYS_ACT_HOST
Détermine le nom de l'hôte.
Elément de script - Statuts et utilisation du système
Exemples :
Affichages à l'aide du Cockpit
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.15 SYS_INFO
Fonction script : lecture des informations sur l'ensemble du système UC4.
Version UC4
[Version UC4] [Utilisation]
Syntaxe
SYS_INFO(composants UC4, VERSION)
Elément de syntaxe
Description/format
Composants UC4
Composants UC4 dont la version doit être déterminée
Format : Littéral de script ou Variable de script
Valeurs autorisées : "SERVER" et "INITIALDATA"
"SERVER" : Serveur UC4
"INITIALDATA" : données initiales de la base de données UC4
VERSION
Indique la version UC4 des composants
Codes retour
Version UC4, y compris le numéro de correctif
"20863" : la valeur indiquée pour les composants UC4 n'est pas valide
"20864" : le nom du second paramètre n'est pas "VERSION".
Remarques
La fonction script détermine la version de l'UC4 Automation Engine et des données initiales de la base de
données UC4. Le format de la version UC4 comporte 12 caractères.
Exemple : 6.00A732-505.
Automation Engine
Exemples
Dans le premier exemple, la version de l'UC4 Automation Engine est lue.
:SET &VERSION# = SYS_INFO(SERVER, VERSION)
Le second exemple détermine la version des données initiales de la base de données UC4.
:SET &VERSION# = SYS_INFO(INITIALDATA, VERSION)
Utilisation
[Version UC4] [Utilisation]
Syntaxe
SYS_INFO(MQPWP,BUSY, période)
SYS_INFO(file d'attente des messages,COUNT)
SYS_INFO(file d'attente des messages,LENGTH, période)
Elément de syntaxe
Description/format
File d'attente des
messages
File d'attente des messages pour laquelle les informations doivent être
déterminées
Format : Littéral de script ou Variable de script
Valeurs autorisées : "MQPWP", "MQWP" , "MQDWP", "MQOWP" et
"MQRWP"
"MQPWP" : file d'attente des messages du processus de travail primaire
"MQWP" : file d'attente des messages du processus de travail
"MQDWP" : file d'attente des messages du processus de dialogue
"MQOWP" : file d'attente des messages des sorties
"MQRWP" : file d'attente des messages des calculs de ressources
BUSY
Indique la charge de travail en pourcentage de l'UC4 Automation Engine.
COUNT
Indique le nombre de messages dans la file d'attente.
LENGTH
Indique la durée moyenne de traitement de la file d'attente des messages.
Période
Période utilisée pour le calcul de l'utilisation ou de la durée moyenne de
traitement.
Format : littéral de script ou Variable de script
Valeurs autorisées : "01", "10" et "60"
"01" : la dernière minute
"10" : les dix dernières minutes
"60" : la dernière heure
Codes retour
331
332
Chapter 3 Organisation fonctionnelle
"20876" : la file d'attente des messages n'existe pas.
"20864" : le deuxième paramètre n'est pas valide.
"20877" : la période ne correspond pas aux valeurs autorisées.
Avec BUSY :
charge de travail en pourcentage de l'UC4 Automation Engine
Avec COUNT :
nombre de messages dans la file d'attente
Avec LENGTH :
durée moyenne de traitement de la file d'attente des messages
Remarques
La fonction script détermine les données concernant les files d'attente des messages.
La charge de travail en pourcentage de l'UC4 Automation Engine peut être demandée avec le mot-clé
BUSY, mais aussi avec les fonctions de script SYS_BUSY_01, SYS_BUSY_10 et SYS_BUSY_60.
Exemples
Le premier exemple demande la charge de travail de l'UC4 Automation Engine pendant les 10 dernières
minutes. Si elle est supérieure à 80 %, un message est envoyé à un Utilisateur.
:IF SYS_INFO(MQPWP, BUSY, "10") > 80
:
SEND_MSG MEIER,UC4,"La charge de travail de l'UC4 Automation Engine
dépasse 80 %"
:ENDIF
Le deuxième exemple lit le nombre de messages se trouvant dans la file d'attente du processus de
dialogue.
:SET &NOMBRE# = SYS_INFO(MQDWP, COUNT)
Le troisième exemple indique la durée de traitement actuelle de la file d'attente des messages du
processus de travail pendant la dernière heure.
:SET &DUREE# = SYS_INFO(MQWP, LENGTH, "60")
Rubriques connexes :
Statuts et utilisation du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.16 SYS_SERVER_ALIVE
Fonction script : Fonction permettant de vérifier si un processus serveur particulier est actif
Automation Engine
333
Syntaxe
SYS_SERVER_ALIVE (processus serveur)
Elément de syntaxe
Description/format
Processus serveur
Nom du processus serveur dont l'activité doit être vérifiée.
Format : Littéral de script ou Variable de script
Codes retour
"Y" - Le processus serveur est actif
"N" - Le processus serveur est inactif.
"20349" - Le processus serveur n'existe pas.
Remarques
Si le processus serveur indiqué est introuvable, vous pouvez réagir à cette erreur en utilisant :ON_
ERROR et l'analyser à l'aide des fonctions de script pour le traitement des erreurs. Selon le paramétrage,
le script reprend ou est interrompu.
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die UC4-Datenbank
geschrieben werden.
Exemple
L'exemple vérifie que le processus de travail "UC4#WP005" est actif. Dans le cas contraire, un message
est envoyé à l'administrateur.
:IF SYS_SERVER_ALIVE("UC4#WP005") = "Y"
:
SEND_MSG "ADMIN","UC4","Le processus de travail UC4#WP005 n'est pas
actif !"
:ENDIF Rubriques connexes :
Elément de script - Statuts et utilisation du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.17 SYS_SNMP_ACTIVE
Fonction script : Vérification de l'activation de la connexion SNMP (Simple Network Management
Protocol) d'UC4.
Syntaxe
SYS_SNMP_ACTIVE()
334
Chapter 3 Organisation fonctionnelle
Codes retour
"Y" - La connexion SNMP est active dans UC4.
"N" - La connexion SNMP n'est pas active dans UC4.
Exemple
L'exemple vérifie si la connexion SNMP est active. Le résultat s'affiche dans le protocole d'activation.
:SET &RET# = SYS_SNMP_ACTIVE()
:PRINT &RET#
Rubriques connexes :
Elément de script
Description
:SEND_SNMP_TRAP
Envoie une interruption SNMP.
UC4 et SNMP
Elément de script - Statuts et utilisation du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.18 SYS_USER_LANGUAGE
Fonction script : Indique la langue dans laquelle le Serveur génère les fichiers log.
Syntaxe
SYS_USER_LANGUAGE()
Codes retour
"D" = allemand
"E" = anglais
"F" = français
Remarques
Vous pouvez définir, dans le fichier INI ucsrv.ini, avec le paramètre language =, la langue dans laquelle les
fichiers Log du Serveur sont écrits. Cette fonction de Script détermine les codes de langue qui y sont
entrés.
Exemple
Dans l'exemple, le code de langue écrit dans le protocole d'activation est déterminé par la fonction de
Script.
:SET &LOGLANG# = SYS_USER_LANGUAGE()
:PRINT "La langue du Serveur est &LOGLANG#."
Automation Engine
335
Rubriques connexes :
Elément de script
Description
SYS_USER_ALIVE
Vérifie si l'Utilisateur est connecté à UC4 par une Interface Utilisateur.
SYS_USER_DEP
Indique le département de l'Utilisateur qui a démarré la Tâche.
SYS_USER_LNAME
Indique le nom et le prénom de l'Utilisateur qui a démarré la Tâche.
SYS_USER_NAME
Indique le nom de l'Utilisateur qui a démarré la Tâche.
Scripts - Données Utilisateur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.11.19 TOGGLE_SYSTEM_STATUS
Fonction du script : arrête ou démarre le traitement automatique de l'intégralité d'un Client.
Syntaxe
TOGGLE_SYSTEM_STATUS(Statut)
Elément de syntaxe
Description/format
Statut
Modification de statut
Format : Nom UC4, Littéral de script ou Variable de script
Valeurs autorisées : "STOP" et "GO"
"STOP" - Stoppe le traitement automatique d'un Client.
"GO" - Démarre le traitement automatique d'un Client.
Codes retour
"0" - Le statut du Client a été modifié.
"9" - Le statut du Client n'a pas été modifié, faute de privilège nécessaire..
Remarques
La fonction de script définit le statut du système sur STOP ou sur GO.
Le privilège "Modifier le statut du Système (STOP/GO)" est nécessaire pour exécuter la fonction de
script !
Das Script-Sprachmittel bewirkt, dass die offenen Transaktionen des Scripts in die UC4-Datenbank
geschrieben werden.
336
Chapter 3 Organisation fonctionnelle
Exemple
Dans l'exemple, le traitement automatique est arrêté. Le code retour de la fonction s'affiche dans le
rapport.
:SET &RET# = TOGGLE_SYSTEM_STATUS(STOP)
:PRINT &RET#
Rubriques connexes :
Elément de script
Description
TOGGLE_OBJECT_STATUS
Arrête ou démarre le traitement automatique des Chaînes de
traitements, Groupes, Evènements ou Schedules.
Elément de script - Statuts et utilisation du système
Modification du statut du système
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12 Date et heure
3.12.1 ADD_DAYS
Fonction de Script : Ajoute des joursà une date indiquée.
Syntaxe
ADD_DAYS(Date, Jours[, Groupe Calendrier, Calendrier])
Elément de syntaxe
Description/format
Date
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".Format : Littéral de
script ou Variable de scriptIl est possible d'indiquer la date dans un autre
Format de date. Saisissez ainsi en premier le format de date souhaité suivi
d'un séparateur (: ou ;) puis la date. L'indication du format de date est
facultative.
Jours
Nombre de jours qui doivent être calculés.
Format : littéral de script, nombre sans guillemets ou Variable de script
Groupe Calendrier
Nom de l'objet Calendrier à prendre en compte pour le calcul.
Format : nom UC4, littéral de Script ou Variable de Script
Calendrier
Nom du Calendrier à prendre en compte pour le calcul.
Format : nom UC4, littéral de script ou Variable de script
Code retour
Automation Engine
337
Date au format indiqué
"0" - Aucun jour n'a été attribué au Calendrier ou bien la date calculée est en dehors du Groupe
Calendrier.
"20327" - L'objet Calendrier n'existe pas.
"20328" - le Calendrier n'existe pas dans l'objet Calendrier.
Remarques
La fonction de Script vous permet d'ajouter des jours à une date indiquée. Vous pouvez également
exécuter les opérations de calcul indépendamment d'un Groupe Calendrier ou d'un Calendrier. On tient
alors compte uniquement des jours définis dans le Calendrier.
Si on indique un format de date spécifique, la date renvoyée correspond à ce format. Si aucun format de
date spécifique n'est indiqué, la date doit être indiquée aux formats "AAMMJJ" ou "AAAAMMJJ". Elle est
renvoyée au même format. Deux points ou un point-virgule sont autorisés comme séparateur entre le
format de date et la date.
Nous tenons en particulier à préciser qu'il est possible de définir un nombre de jours égal à zéro. Lorsque la
date indiquée tombe dans le Calendrier, la date elle-même est renvoyée, sinon c'est la date valide suivante
dans le Calendrier.
Pour le calcul de la date, on tient compte de l'intervalle du Groupe Calendrier indiqué. Ce dernier
dépend du paramètre configuré par l'administrateur UC4 dans la Variable UC4 UC_CLIENT_SETTINGS
et dans les Clefs NOW_MINUS et NOW_PLUS. Si la date calculée tombe en dehors du Groupe
Calendrier, la fonction de Script renvoie la valeur "0".
Exemples
Le premier exemple ajoute deux jours à une date indiquée. Le résultat ("000401") est affiché dans le
protocole d'activation.
:SET &DATE# = ADD_DAYS("000330", 2)
:PRINT &DATE#
Le deuxième exemple transmet la date par une Variable de Script. Comme aucun format de date n'est
indiqué, chaque date utilise le format par défaut "AAMMJJ". Le résultat ("000401") est également affiché
dans le protocole d'activation.
:SET &DATE1# = "000330"
:SET &DATE2# = ADD_DAYS(&DATE1#, 2)
:PRINT &DATE2#
Le troisième exemple détermine le prochain jour ouvré valide. On utilise ainsi les définitions de l'agenda de
l'entreprise. Comme la date du jour actuelle n'est pas demandée au format par défaut, le format de date
spécial doit également être indiqué pour la Variable de Script.
:SET &DATEACT# = SYS_DATE("JJ.MM.AA")
:SET &PROCHJOUROUVRE# = ADD_DAYS("JJ.MM.AA:&DATEACT#", 1, ENTREPRISE, JOUR
OUVRE)
Rubriques connexes :
Scripts - Date et heure
Formats de date, d'heure et de période
338
Chapter 3 Organisation fonctionnelle
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.2 ADD_PERIOD
Fonction du Script : ajoute une période à une date donnée.
Syntaxe
ADD_PERIOD(date, format de la période:période[, format de sortie])
Elément de syntaxe
Description/format
Date
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
Format:Période
Format : Littéral de script ou Variable de script
Période : Saisie d'une période à ajouter à la date donnée.
Format : Format prédéfini pour la Période.
Deux points (:) ou un point-virgule (;) sont autorisés comme séparateur entre
le format de la période et la période.
Format de sortie
Format prédéfini de la date déterminée.
Format : Nom UC4, littéral de Script ou Variable de Script
Valeur par défaut: "AAMMJJ"
Code retour
Date au format indiqué.
Remarques
La fonction de Script ajoute une année, un mois, un trimestre ou une semaine à la date indiquée.
La fonction de Script reçoit une date. Une indication explicite du format de date est alors facultative. Si
aucun format de date spécifique n'est utilisé, la date doit être indiquée au format "AAMMJJ" ou
"AAAAMMJJ". Deux points ou un point-virgule sont autorisés comme séparateur entre le format de date et
la date.
La période est ajoutée à la date indiquée. Période est un chiffre. Si le résultat est une date devant être
postérieure au 31.12.9999, cela génère une erreur.
Le format de sortie est facultatif. Si aucun format de sortie n'est utilisé, la fonction de Script renvoie une
date au format "AAMMJJ" par défaut.
Automation Engine
339
Exemples
Le premier exemple ajoute 2 semaines au 6.3.2000. Le résultat (20.03.2000) est écrit dans le rapport.
:SET &DATE#=ADD_PERIOD ("JJ.MM.AA:06.03.00","WW;2","JJ.MM.AAAA")
:PRINT &DATE#
Le deuxième exemple ajoute un trimestre au 31.1.2000. Le résultat (30.04.2000) est écrit dans le rapport.
:SET &DATE#=ADD_PERIOD ("000131","Q:1","JJ-MM-AAAA")
:PRINT &DATE#
Dans le troisième exemple, une année est ajoutée au 29.2.2000. 28.02.2001 s'affiche dans le rapport, car
l'année 2001 n'est pas une année bissextile.
:SET &DATE#=ADD_PERIOD ("20000229","AA:0001",JJ.MM.AAAA)
:PRINT &DATE#
Rubriques connexes :
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.3 ADD_TIME
Fonction du Script : ajoute deux heures.
Syntaxe
ADD_TIME(heure1,heure2 [,format de sortie])
Elément de syntaxe
Description/format
heure1
et
heure2
Entrée d'une heure au format "HHMMSS".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer l'heure dans un autre Format d'heure. Saisissez ainsi
en premier le format d'heure souhaité suivi d'un séparateur (;) puis l'heure.
L'indication du format d'heure est facultative.
Format de sortie
Code retour
Heure au format indiqué
Format prédéfini pour l'heure indiquée.
Format : Nom UC4, littéral de Script ou Variable de Script
Par défaut : "HHMMSS"
340
Chapter 3 Organisation fonctionnelle
Remarques
La fonction de Script vous permet d'ajouter deux heures. Elle prend en compte le passage de 23:59:59 à
00:00:00.
La fonction de Script reçoit 2 heures. L'indication d'un format d'heure spécifique est alors facultative. Si
aucun format d'heure n'est utilisé, l'heure doit être indiquée au format standard "HHMMSS". Seul le pointvirgule peut être utilisé comme séparateur entre le format d'heure et l'heure.
Le format de sortie est facultatif. Si aucun format de sortie n'est utilisé, la fonction de Script renvoie une
heure au format "HHMMSS" par défaut.
Exemples
Le premier exemple n'utilise pas de format d'heure. Le résultat ("130000") s'affiche dans le protocole
d'activation.
:SET &TIME# = ADD_TIME("120000","010000")
:PRINT &TIME#
Le deuxième exemple utilise un format d'heure et un format de sortie. Le résultat est "04:59:00".
:SET &TIME# = ADD_TIME("235959", "HH;05", "HH:MM")
:PRINT &TIME#
Dans le troisième exemple, 71 secondes sont ajoutées à 23:59:59. Un format d'heure est utilisé, mais il
n'y a pas de format de sortie. Le résultat ("000110") correspond au format standard.
:SET &TIME# = ADD_TIME("HH:MM:SS;23:59:59", "SS;71")
:PRINT &TIME#
Semblable au troisième exemple. Mais le format de sortie est composé d'un paramètre spécial. Le résultat
("70") s'affiche en secondes dans le protocole d'activation.
:SET &TIME# = ADD_TIME("HHMMSS;235959", "SS;71", SS)
:PRINT &TIME#
Rubriques connexes :
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.4 ADD_TIMESTAMP
Fonction script : Additionne une durée à partir d'un horodatage.
Syntaxe
ADD_TIMESTAMP(Horodatage, Heure)
Elément de syntaxe
Description/format
Automation Engine
341
Marque horaire
Marque horaire à partir de la date et de l'heure ("AAAA-MM-JJ HH:MM:SS").
Format : Littéral de script ou Variable de script
Heure
Heure ("HH:MM:SS") devant être soustraite à l'horodatage.
Format : Littéral de script ou Variable de script
Valeurs autorisées : 0 à 99 (pour les HH, MM et SS)
Code retour
Horodatage au format "AAAA-MM-JJ HH:MM:SS"
Remarques
La fonction de Script additionne une heure au format "HH:MM:SS" à un horodatage donné au format
"AAAA-MM-JJ HH:MM:SS".
Il est pour cela calculé selon l'UTC : les heures d'été et d'hiver ne sont pas prises en compte. Etant donné
que les heures, les minutes et les secondes ne peuvent pas dépasser la valeur maximale 99, le résultat de
la fonction de Script peut être légèrement supérieur à 4 jours après l'horodatage d'origine.
Exemple
L'exemple ajoute 24 heures et une seconde à l'horodatage. Le résultat "01.01.2004 00:00:01" est affiché
dans le protocole d'activation.
:SET &RET# = ADD_TIMESTAMP("2003-12-31 00:00:00","24:00:01")
:PRINT &RET#
Rubriques connexes :
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.5 CALE_LOOK_AHEAD
Fonction script : Détermine la date suivante en fonction des conditions de calendrier.
Syntaxe
CALE_LOOK_AHEAD([Date], JOBP\JSCH, numéro de Tâche)
CALE_LOOK_AHEAD([Date], condition, groupe calendrier, calendrier [ [,groupe
calendrier][,calendrier] ]...)
Elément de syntaxe
Description/format
342
Chapter 3 Organisation fonctionnelle
Date
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
JOBP\JSCH
Nom d'un Workflow ou d'un Schedule.
Format : Littéral de script ou Variable de script
Numéro de Tâche
Numéro de la Tâche au sein de la Chaîne de traitements ou du Schedule.
Format : Littéral de script ou Variable de script
Condition
Condition qui doit être réunie pour la détermination de la date.
Format: Littéral de script ou Variable de script
Valeurs autorisées : "ONE", "ALL", "NO"
"ONE" - Une des conditions de Calendrier doit être réunie.
"ALL" - Toutes les conditions de Calendrier doivent être réunies.
"NO" - Aucune condition de Calendrier ne doit être réunie.
Si aucune des conditions de Calendrier n'est remplie pour une Tâche, un
espace est alors renvoyé. Dans ce cas, CALE_LOOK_AHEAD_MAX
s'affiche dans le Moniteur de Schedule.
Groupe Calendrier
Nom d'un Calendrier.
Format: Littéral de script ou Variable de script
Calendrier
Calendrier à l'intérieur de ce Groupe Calendrier
Format: Littéral de script ou Variable de script
Codes retour
Date au format indiqué.
" " - Cela ne remplit aucune condition du Calendrier.
Remarques
Vous pouvez utiliser la fonction script de deux façons différentes:
En entrant un Workflow ou un Schedule, il est d'abord possible de déterminer la date suivante d'un objet
correspondant, pour lequel il va être exécuté en raison des conditions de Calendrier définies. L'objet est
défini par le numéro de la Tâche. Celui-ci s'affiche dans la vue graphique pour le Workflow et dépend à
présent de l'ordre dans lequel les objets sont ajoutés dans le Workflow. Pour Schedule, la numérotation
des objets correspond à l'ordre dans la liste de l'onglet "Schedule".
La fonction script prend, entre autres, en charge le calcul de la date suivante lorsque qu'une, toutes ou
aucune des conditions de Calendrier sont réunies. 5 paramètres maximum peuvent être indiqués avec
votre Calendrier. L'administrateur UC4 peut définir pour chaque Client le nombre maximal de jours pris en
compte lors de la détermination de la date valide suivante dans la Variable UC4 UC _CLIENT_SETTINGS
avec la clef "CALE_LOOK_AHEAD_MAX".
Il est possible d'indiquer une date à partir de laquelle les conditions de Calendriers doivent être vérifiées.
L'indication du format de date est facultative. Si aucun format de date n'est utilisé, la date doit être
indiquée au format "AAMMJJ" ou "AAAAMMJJ". Deux points ou un point-virgule sont autorisés comme
Automation Engine
343
séparateur entre le format de date et la date. Si vous n'entrez pas de date, la date du jour sera utilisée pour
le calcul.
La date déterminée par la fonction de script est à présent soit au format standard soit au format que
vous définissez dans le premier paramètre.
Attention: les paramètres Groupe Calendrier et Calendrier doivent toujours être indiqués ensemble (voir
exemple).
Exemples
Dans l'exemple suivant, la date suivante, à laquelle doit commencé l'objet avec le numéro de Tâche "3"
dans le Workflow GS.JOUR, doit être déterminée.
:SET &DATE# = CALE_LOOK_AHEAD("AAAAMMJJ:20041010","MAWI.TAG","3")
Le deuxième exemple définit la date suivante, au cours de laquelle sont réunies toutes les conditions de
Calendriers transmises.
:SET &DATE# = CALE_LOOK_AHEAD(,"ALL","AGENDA_ENTREPRISE","JOURS_
OUVRES","AGENDA_ENTREPRISE","DISPOSITION01")
Rubriques connexes :
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.6 CONV_DATE
Fonction script : Convertit le format d'une date.
Syntaxe
CONV_DATE(Date[, Nouveau format de date])
Elément de syntaxe
Description/format
Date
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
Nouveau format de date Nouveau format prédéfini pour la date indiquée.
Format : Littéral de script ou Variable de script
Code retour
Date au nouveau format
344
Chapter 3 Organisation fonctionnelle
Remarques
La fonction de Script convertit le format de date de la Date vers le nouveau format de date.
L'entrée de l'ancien format de date et du nouveau format de date est facultative. Ils servent à indiquer le
format dans lequel la fonction doit obtenir la date et renvoyer sa valeur.
Si le l'ancien format de date n'est pas utilisé, la date doit être indiquée au format "AAMMJJ" ou
"AAAAMMJJ". Si vous n'avez pas indiqué de nouveau format de date, le format par défaut "AAMMJJ" est
renvoyé. Deux points ou un point-virgule sont autorisés comme séparateur entre l'ancien format de date et
la date.
Exemples
Voici des exemples de conversion de date d'un format à l'autre. Le code renvoyé par la fonction de Script
est transmis à une Variable de Script. L' ancien format de date ou le nouveau format de date est alors
ignoré. Les codes retour sont "31.12.1999", "31-12-1999" et "991231".
:SET &JOURREF# = CONV_DATE("JJMMAA:311299", "JJ.MM.AAAA")
:SET &JOURREF# = CONV_DATE("991231", "JJ-MM-AAAA")
:SET &JOURREF# = CONV_DATE("JJMMAA:311299")
Rubriques connexes :
Elément de script
Description
CONV_TIMESTAMP
Convertit la date et l'heure pour un autre Fuseau horaire.
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.7 CONV_TIMESTAMP
Fonction script : Convertit la date et l'heure pour un autre Fuseau horaire.
Syntaxe
CONV_TIMESTAMP(Horodatage,[Fuseauhoraire1][,Fuseauhoraire2])
Elément de syntaxe
Description/format
Marque horaire
Marque horaire à partir de la date et de l'heure ("AAAA-MM-JJ HH:MM:SS").
Format : Littéral de script ou Variable de script
Fuseau horaire1
Nom d'un objet Fuseau horaire ou mot clé UTC.
Fuseau horaire ou UTC attribué à l'horodatage.
Format : littéral de script ou Variable de script
Valeur par défaut : "UTC"
Automation Engine
Fuseau horaire2
345
Nom d'un objet Fuseau horaire.
Fuseau horaire pour lequel la marque horaire doit être convertie.
Format : Littéral de script ou Variable de script
Code retour
Horodatage au format "AAAA-MM-JJ HH:MM:SS".
Remarques
La fonction de Script convertit la date et l'heure au format "AAAA-MM-JJ HH:MM:SS" pour un autre
fuseau horaire.
Pour cela, le fuseau horaire précédent, à partir duquel commence le calcul, peut être indiqué par fuseau
horaire1. Si le mot clé UTC est utilisé ou que ce paramètre est omis, l'UTC (Universal Time Coordinated)
sert de base de calcul. Le fuseau horaire, pour lequel l'horodatage doit être converti, est désigné par fuseau
horaire2. Si ce paramètre facultatif n'est pas indiqué, le fuseau horaire de l'objet ou du Client est utilisé
lorsqu'aucun fuseau horaire n'a été défini pour l'objet lui-même.
Si l'UTC ne sert pas de base de calcul, la conversion de l'heure pour le passage de l'heure d'été à
l'heure normale est imprécise. Elle est indétectable si la première ou la deuxième apparition de cette heure
est 02:30:00, par exemple. UC4 part toujours de la première apparition de l'heure pendant le passage à
l'heure normale.
Exemple
L'exemple illustre la conversion de l'horodatage pour le changement d'année 2003/2004. Le calcul illustre
la conversion de l'heure australienne de Sydney à l'heure européenne. Le résultat "31.12.03 14:00:00" est
affiché dans le protocole d'activation.
:SET &MEZ# = CONV_TIMESTAMP("2004-01-01 00:00:00","TZ.SYD","TZ.MEZ")
:PRINT &MEZ#
Rubriques connexes :
Elément de script
Description
CONV_DATE
Convertit le format d'une date.
Scripts - Date et heure
Heure
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.8 DAY_OF_YEAR
Fonction script : Indique le jour actuel de l'année
346
Chapter 3 Organisation fonctionnelle
Syntaxe
DAY_OF_YEAR(Date)
Elément de syntaxe
Description/format
Date
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
Code retour
Jour actuel d'une date de l'année.
Remarques
L'indication d'un format de date est facultative. Si aucun format de date spécifique n'est utilisé, la date doit
être indiquée au format "AAMMJJ" ou "AAAAMMJJ". Deux points ou un point-virgule sont autorisés
comme séparateur entre le format de date et la date.
Exemple
L'exemple indique la valeur "366" en tant que jour actuel dans l'année.
:SET &JOURACT# = DAY_OF_YEAR("JJ.MM.AA:31.12.00")
Rubriques connexes :
Elément de script
Description
SYS_TIME_PHYSICAL
Définit l'heure du jour actuelle.
SYS_DATE_PHYSICAL
Détermine la date du jour actuelle.
SYS_TIMESTAMP_PHYSICAL
Indique la date et l'heure actuelles.
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.9 DIFF_DATE
Fonction du Script : détermine la différence (en jours) entre deux dates.
Syntaxe
DIFF_DATE(date1,date2)
Automation Engine
Elément de syntaxe
Description/format
date1
et
date2
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".
347
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
Code retour
Nombre de jours entre les deux dates.
Remarques
La fonction de Script détermine la différence (en jours) entre la date1 et la date2. En l'occurrence, la date2
peut être antérieure ou postérieure à la date1.
Pour les indications de dates, le format de date est facultatif. Si aucun format de date spécifique n'est
utilisé, la date doit être indiquée au format "AAMMJJ" ou "AAAAMMJJ". Deux points ou un point-virgule
sont autorisés comme séparateur entre le format de date et la date.
Exemples
Le premier exemple détermine la différence entre les dates. Ces dernières utilisent les formats par défaut
"AAMMJJ" et "AAAAMMJJ". Le résultat "1" est affiché dans le rapport.
:SET &DIFF# = DIFF_DATE("000330","20000331")
:PRINT &DIFF#
Le deuxième exemple montre l'attribution des dates données aux Variables de Script. La fonction de Script
est appelée avec les Variables. Comme les dates n'utilisent pas de format par défaut, le format de date
spécial doit également être indiqué pour les Variables de Script. Le résultat "366" est affiché dans le
rapport.
:SET &DATE1# = "01-01-2000"
:SET &DATE2# = "01012001"
:SET &DIFF# = DIFF_DATE("DD-MM-YYYY:&DATE1#","JJMMAAAA;&DATE2#")
:PRINT &DIFF#
Le troisième exemple a le même résultat que le deuxième. Mais ici, les Variables reçoivent le format de
date et la date.
:SET &DATE1# = "JJ-MM-AAAA:01-01-2000"
:SET &DATE2# = "JJMMAAAA:01012001"
:SET &DIFF# = DIFF_DATE(&DATE1#, &DATE2#)
:PRINT &DIFF#
Rubriques connexes :
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
348
Chapter 3 Organisation fonctionnelle
3.12.10 DIFF_TIME
Fonction du Script : détermine la différence entre deux heures.
DIFF_TIME(heure1,heure2 [,format de sortie])
Elément de syntaxe
Description/format
heure1
et
heure2
Entrée d'une heure au format "HHMMSS".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer l'heure dans un autre Format d'heure. Saisissez ainsi
en premier le format d'heure souhaité suivi d'un séparateur (;) puis l'heure.
L'indication du format d'heure est facultative.
Format de sortie
Format prédéfini pour l'heure indiquée.
Format : Nom UC4, littéral de Script ou Variable de Script
Par défaut : "HHMMSS"
Code retour
Heure au format indiqué
Remarques
La fonction de Script détermine la différence entre l'heure1 et l'heure2. L'écart calculé est l'écart entre
l'heure d'avant et l'heure d'après. Le fait que l'heure d'après soit saisie dans heure1 ou heure2 n'a pas
d'importance.
La fonction de Script reçoit 2 heures. L'indication d'un format d'heure est alors facultative. Si aucun format
de l'heure spécifique n'est utilisé, l'heure doit être indiquée au format standard "HHMMSS". Seul le pointvirgule peut être utilisé comme séparateur entre le format d'heure et l'heure. Si des paramètres spéciaux
sont utilisés pour format heure, le calcul est réalisé avec le nombre d'heures, de minutes ou de secondes
indiqué. Les informations manquantes sont systématiquement remplacées par "00".
Le format de sortie est facultatif. Si aucun format de sortie n'est utilisé, la fonction de Script renvoie une
heure au format "HHMMSS" par défaut.
Exemples
Le premier exemple détermine la différence entre les heures. Ces dernières utilisent le format par défaut
"HHMMSS". Le résultat "003000" est affiché dans le rapport.
:SET &DIFF# = DIFF_TIME("230000", "223000")
:PRINT &DIFF#
Dans cet exemple, un paramètre spécial est utilisé pour la deuxième heure. Ainsi, les heures et secondes
correspondantes sont automatiquement "00". Un format de sortie est prédéfini. Le résultat "00:09" apparaît
dans le rapport.
:SET &DIFF# = DIFF_TIME("HH:MM:SS;00:01:30", "MM;11", "HH:MM")
:PRINT &DIFF#
Le deuxième exemple montre l'attribution des heures données aux Variables de Script. La fonction de
Script est appelée avec les Variables. Comme les heures n'utilisent pas de format par défaut, le format
Automation Engine
349
d'heure spécial doit également être indiqué pour les Variables de Script. Le résultat "120000" est affiché
dans le rapport.
:SET &HEURE1# = "00:00:00"
:SET &HEURE2# = "12:00:00"
:SET &DIFF# = DIFF_TIME("HH:MM:SS;&HEURE1#","HH:MM:SS;&HEURE2#")
:PRINT &DIFF#
Rubriques connexes :
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.11 FIRST_OF_PERIOD
Fonction du Script : détermine le premier jour de la période pour une date donnée.
Syntaxe
FIRST_OF_PERIOD(date, format de la période[, format de sortie[, groupe calendrier,
calendrier]])
Elément de syntaxe
Description/format
Date
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
Format de période
Indication d'un format de période valide.
Format : Littéral de script ou Variable de script
Format de sortie
Format prédéfini de la date déterminée.
Format : littéral de script ou Variable de script
Valeur par défaut : AAMMJJ,
Groupe Calendrier
Nom du Groupe Calendrier devant être pris en considération pour le début de
la période.
Format : nom UC4, littéral de Script ou Variable de Script
Calendrier
Nom du Calendrier devant être pris en considération pour le début de la
période.
Format : nom UC4, littéral de script ou Variable de script
Codes retour
Date du début de la période au format indiqué.
"20327" - L'objet Groupe Calendrier n'existe pas.
"20328" - Le Calendrier n'existe pas dans l'objet Groupe Calendrier.
"20456" - La date de début de la période ne figure pas dans le Calendrier.
350
Chapter 3 Organisation fonctionnelle
Remarques
La fonction du Script détermine le premier jour de la période pour la date indiquée.
La fonction de Script reçoit une date. L'indication du format de date est facultative. Si aucun format de date
spécifique n'est utilisé, la date doit être indiquée au format "AAMMJJ" ou "AAAAMMJJ". Deux points ou
un point-virgule sont autorisés comme séparateur entre le format de date et la date.
Le type de période (année, trimestre, mois ou année) est défini par le format de période.
Le format de période spécial "WS" s'applique à cette fonction de Script. Ainsi, le premier jour d'une
semaine commence toujours par le dimanche. "WW" au contraire indique automatiquement le lundi
comme premier jour de la semaine.
Le format de sortie est facultatif. Si aucun format de sortie n'est utilisé, la fonction de Script renvoie une
date au format "AAMMJJ" par défaut. Attention, si vous saisissez des Groupes Calendriers et des
Calendriers, pensez à les séparer par des virgules si aucun Format de sortie n'est utilisé.
Si vous utilisez des Groupes Calendriers et des Calendriers, la fonction de Script renverra le premier jour
correspondant de la période. Si aucun jour n'est valide pour cette période, le résultat est une date nulle au
format de date courant (par ex. 0000-00-00).
L'instruction de script :ON_ERROR permet de définir la réaction à cette erreur. Comme indiqué
auparavant, vous pouvez l'analyser avec les fonctions de script pour le traitement des erreurs. Le
traitement du script se poursuit. Toutefois, vous avez également la possibilité de l'interrompre.
Exemples
Le premier exemple détermine le premier jour de la semaine pour le 29.03.2000. Le résultat 27.03.00 (lundi)
est affiché dans le rapport.
:SET &DATE# = FIRST_OF_PERIOD ("000329","WW","JJ.MM.AA")
:PRINT &DATE#
Lorsque le format de période spécial "WS" est utilisé, 26.03.00 (dimanche) apparaît comme résultat dans
le protocole d'activation.
:SET &DATE# = FIRST_OF_PERIOD ("JJ.MM.AA:29.03.00","WS","JJ.MM.AA")
:PRINT &DATE#
Dans le troisième exemple, le premier jour pertinent d'un trimestre est déterminé. Pour ce faire, aucun
format de sortie n'est spécifié.
:SET &DATE# = FIRST_OF_PERIOD ("000329", "Q", , DISPONIBILITE, JOUR
SEMAINE)
:PRINT &DATE#
Rubriques connexes :
Elément de script Description
LAST_OF_
PERIOD
Détermine le dernier jour de la période pour une date donnée.
:ON_ERROR
Détermine les réactions associées à certaines erreurs ou certains messages de
script.
Scripts - Date et heure
Formats de date, d'heure et de période
Automation Engine
351
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.12 LAST_OF_PERIOD
Fonction du Script : détermine le dernier jour de la période pour une date donnée.
Syntaxe
LAST_OF_PERIOD(date, format de la période[, format de sortie[, groupe calendrier,
calendrier]])
Elément de syntaxe
Description/format
Date
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
Format de période
Indication d'un format de période valide.
Format : Littéral de script ou Variable de script
Format de sortie
Format prédéfini de la date déterminée.
Format : littéral de script ou Variable de script
Valeur par défaut : AAMMJJ,
Groupe Calendrier
Nom du Groupe Calendrier devant être pris en considération pour la fin de la
période.
Format : nom UC4, littéral de Script ou Variable de Script
Calendrier
Nom du Calendrier devant être pris en considération pour la fin de la période.
Format : UC4-Name, Script-Literal oder Script-Variable Codes retour
Date de la fin de la période au format indiqué.
"20327" - L'objet Groupe Calendrier n'existe pas.
"20328" - Le Calendrier n'existe pas dans l'objet Groupe Calendrier.
"20456" - La date de la fin de la période ne figure pas dans le Calendrier.
Remarques
La fonction du Script détermine le dernier jour de la période pour la date indiquée. Le code retour est une
date.
La fonction de Script reçoit une date. L'indication d'un format de date est alors facultative. Si aucun format
de date spécifique n'est utilisé, la date doit être indiquée au format "AAMMJJ" ou "AAAAMMJJ". Deux
points ou un point-virgule sont autorisés comme séparateur entre le format de date et la date.
Le type de période (année, trimestre, mois ou semaine) est défini par le format de période.
Remarque : Le format de période spécial "WS" s'applique à cette fonction de Script. Ainsi, le dernier jour
352
Chapter 3 Organisation fonctionnelle
d'une semaine commence toujours par le samedi. "WW" au contraire indique automatiquement le
dimanche comme dernier jour de la semaine.
Le format de sortie est facultatif. Si aucun format de sortie n'est utilisé, la fonction de Script renvoie une
date au format "AAMMJJ" par défaut. Attention : Attention, si vous saisissez des Groupes Calendriers et
des Calendriers, pensez à les séparer par des virgules si aucun Format de sortie n'est utilisé.
Si vous utilisez des Groupes Calendriers et des Calendriers, la fonction de Script renverra le premier jour
correspondant de la période. Si aucun jour n'est valide pour cette période, le résultat est une date nulle au
format de date courant (par ex. 0000-00-00).
L'instruction de script :ON_ERROR permet de définir la réaction à cette erreur. Comme indiqué
auparavant, vous pouvez l'analyser avec les fonctions de script pour le traitement des erreurs. Le
traitement du script se poursuit. Toutefois, vous avez également la possibilité de l'interrompre.
Exemples
Le premier exemple détermine le dernier jour de la semaine pour le 29.03.2000. Le résultat 02/04/2000
(dimanche) est affiché dans le rapport, d'activation.
:SET &DATE# = LAST_OF_PERIOD ("000329","WW","JJ.MM.AA")
:PRINT &DATE#
Lorsque le format de période spécial "WS" est utilisé, 01.04.00 (samedi) apparaît comme résultat dans le
protocole d'activation.
:SET &DATE# = LAST_OF_PERIOD ("JJ.MM.AA:29.03.00","WS","JJ.MM.AA")
:PRINT &DATE#
Dans le troisième exemple, le dernier jour pertinent d'un trimestre est déterminé. Pour ce faire, aucun
format de sortie n'est spécifié.
:SET &DATE# = LAST_OF_PERIOD ("000329", "Q", , DISPONIBILITE, JOUR SEMAINE)
:PRINT &DATE#
Rubriques connexes :
Elément de script
Description
FIRST_OF_
PERIOD
Détermine le premier jour de la période pour une date donnée.
:ON_ERROR
Détermine les réactions associées à certaines erreurs ou certains messages de
script.
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.13 SUB_DAYS
Fonction de Script : Soustrait des joursà unedateindiquée.
Automation Engine
353
Syntaxe
SUB_DAYS(Date, Jours[, Groupe Calendrier, Calendrier])
Elément de syntaxe
Description/format
Date
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
Jours
Nombre de jours qui doivent être calculés.
Format : littéral de script, nombre sans guillemets ou Variable de script
Groupe Calendrier
Nom du Groupe Calendrier à prendre en compte pour le calcul.
Format : nom UC4, littéral de Script ou Variable de Script
Calendrier
Nom du Calendrier à prendre en compte pour le calcul.
Format : nom UC4, littéral de script ou Variable de script
Code retour
Date au format indiqué
"0" - Aucun jour n'a été attribué au Calendrier ou bien la date calculée est en dehors du Groupe
Calendrier.
"20327" - L'objet Calendrier n'existe pas.
"20328" - le Calendrier n'existe pas dans l'objet Calendrier.
Remarques
La fonction de Script vous permet de soustraire des jours d'une date indiquée. Vous pouvez également
exécuter les opérations de calcul indépendamment d'un Groupe Calendrier ou d'un Calendrier. On tient
alors compte uniquement des jours qui, par définition, sont valables dans le Groupe Calendrier.
Si on indique un format de date spécifique, la date renvoyée correspond à ce format. Si le format de date
n'est pas utilisé, la date doit être indiquée au format "AAMMJJ" ou "AAAAMMJJ". Elle est renvoyée au
même format. Deux points ou un point-virgule sont autorisés comme séparateur entre le format de date et
la date.
Nous tenons en particulier à préciser qu'il est possible de définir un nombre de jours égal à zéro. Lorsque la
date indiquée tombe dans le Calendrier, la date elle-même est renvoyée, sinon c'est la date valide
précédente dans le Calendrier.
Pour le calcul de la date, on tient compte de l'intervalle du Groupe Calendrier indiqué. Ce dernier
dépend du paramètre configuré par l'administrateur UC4 dans la Variable UC4 UC_CLIENT_SETTINGS
et dans les Clefs NOW_MINUS et NOW_PLUS. Si la date calculée tombe en dehors du Groupe
Calendrier, la fonction de Script renvoie la valeur "0".
Exemples
Le premier exemple soustrait deux jours d'une date indiquée. Le résultat ("000330") est affiché dans le
protocole d'activation.
354
Chapter 3 Organisation fonctionnelle
:SET &DATE# = SUB_DAYS("000401", 2)
:PRINT &DATE#
Dans le deuxième exemple, une instruction de Script demande à l'Utilisateur le nombre de jours à libérer.
Cette fonction permet de soustraire ce chiffre de la date du jour actuelle et de le saisir dans une Variable de
Script. Comme aucun format de date n'est indiqué, chaque date utilise le format par défaut "AAMMJJ".
:SET &DATEACT# = SYS_DATE()
:READ &NOMBRE#,"00","Combien de jours à libérer?","08",N
:SET &DATERET# = SUB_DAYS(&DATEACT#, &NOMBRE#)
Le troisième exemple détermine la date actuelle. Deux jours en sont ensuite retirés. Comme la date du jour
actuelle n'est pas demandée au format par défaut, le format de date spécial doit également être indiqué
pour la Variable de Script.
:SET &DATEACT# = SYS_DATE("JJ.MM.AA")
:SET &JOURVAR# = SUB_DAYS("JJ.MM.AA:&DATEACT#", 2)
Rubriques connexes :
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.14 SUB_PERIOD
Fonction script : Soustrait une période d'une date donnée
Syntaxe
SUB_PERIOD(date, format de la période:période[, format de sortie])
Elément de syntaxe
Description/format
Date
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
Format:Période
Format : Littéral de script ou Variable de script
Période : Saisie d'une période à ajouter à la date donnée.
Format : Format prédéfini pour la Période.
Deux points (:) ou un point-virgule (;) sont autorisés comme séparateur entre
le format de la période et la période.
Format de sortie
Code retour
Format prédéfini de la date déterminée.
Format : Nom UC4, littéral de Script ou Variable de Script
Valeur par défaut: "AAMMJJ"
Automation Engine
355
Date au format indiqué.
Remarques
La fonction de Script retire une année, un mois, un trimestre ou une semaine de la date indiquée.
La fonction de Script reçoit une date. L'indication d'un format de date est alors facultative. Si aucun format
de date n'est utilisé, la date doit être indiquée au format "AAMMJJ" ou "AAAAMMJJ". Deux points ou un
point-virgule sont autorisés comme séparateur entre le format de date et la date.
La période est soustraite de la date indiquée. Période est un chiffre. Si le résultat est une date devant être
antérieure à l'année 0000, cela génère une erreur.
Le format de sortie est facultatif. Si aucun format de sortie n'est utilisé, la fonction de Script renvoie une
date au format "AAMMJJ" par défaut.
Exemples
Le premier exemple soustrait 2 semaines au 05/07/2000. Le résultat (21/06/2000) est écrit dans le rapport.
:SET &DATE#=SUB_PERIOD ("JJ.MM.AA:05.07.00","WW;2","JJ.MM.AAAA")
:PRINT &DATE#
Le deuxième exemple soustrait un trimestre au 31/07/2000. Le résultat (30.04.2000) est écrit dans le
rapport.
:SET &DATE#=SUB_PERIOD ("000731","Q:1","JJ-MM-AAAA")
:PRINT &DATE#
Dans le troisième exemple, une année est soustraite du 28.02.2001. Le résultat 28.02.2000 est affiché
dans le rapport.
:SET &DATE#=SUB_PERIOD ("20010228","AA:0001",JJ.MM.AAAA)
:PRINT &DATE#
Rubriques connexes :
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.15 SUB_TIME
Fonction script : Soustraction d'une heure à une autre
Syntaxe
SUB_TIME(heure1,heure2 [,format de sortie])
Elément de syntaxe
Description/format
356
Chapter 3 Organisation fonctionnelle
heure1
et
heure2
Entrée d'une heure au format "HHMMSS".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer l'heure dans un autre Format d'heure. Saisissez ainsi
en premier le format d'heure souhaité suivi d'un séparateur (;) puis l'heure.
L'indication du format d'heure est facultative.
Format de sortie
Format prédéfini pour l'heure indiquée.
Format : Nom UC4, littéral de Script ou Variable de Script
Par défaut : "HHMMSS"
Code retour
Heure au format indiqué
Remarques
La fonction de Script vous permet de soustraire deux heures. Dabei wird der Wechsel von 00:00:00 auf
23:59:59 berücksichtigt.
La fonction de Script reçoit 2 heures. L'indication d'un format de date est alors facultative. Si aucun format
de l'heure spécifique n'est utilisé, l'heure doit être indiquée au format standard "HHMMSS". Seul le pointvirgule peut être utilisé comme séparateur entre le format d'heure et l'heure.
Le format de sortie est facultatif. Si aucun format de sortie n'est utilisé, la fonction de Script renvoie une
heure au format "HHMMSS" par défaut.
Exemples
Le premier exemple n'utilise pas de format d'heure. Le résultat ("110000") s'affiche dans le protocole
d'activation.
:SET &HEURE# = SUB_TIME("120000","010000")
:PRINT &HEURE#
Le deuxième exemple utilise un format d'heure et un format de sortie. Le résultat est "23:00:00".
:SET &HEURE# = SUB_TIME("040000", "HH;05", "HH:MM")
:PRINT &HEURE#
Dans le troisième exemple, 31 secondes sont soustraites de 00:00:10. Un format d'heure est utilisé, mais
il n'y a pas de format de sortie. Le résultat ("235940") correspond au format standard.
:SET &HEURE# = SUB_TIME("HH:MM:SS;00:00:10", "SS;30")
:PRINT &HEURE#
Semblable au troisième exemple. Mais le format de sortie est composé d'un paramètre spécial. Le résultat
("86380") est produit par la conversion de 23:59:40 en secondes.
:SET &HEURE# = SUB_TIME("HHMMSS;000010", "SS;30", SS)
:PRINT &HEURE#
Rubriques connexes :
Scripts - Date et heure
Formats de date, d'heure et de période
Automation Engine
357
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.16 SUB_TIMESTAMP
Fonction script : Soustrait une durée à partir d'un horodatage.
Syntaxe
SUB_TIMESTAMP (horodatage, heure )
Elément de syntaxe
Description/format
Marque horaire
Marque horaire à partir de la date et de l'heure ("AAAA-MM-JJ HH:MM:SS").
Format : Littéral de script ou Variable de script
Heure
Heure ("HH:MM:SS") devant être soustraite de l'horodatage.
Format : Littéral de script ou Variable de script
Valeurs autorisées : 0 à 99 (pour les HH, MM et SS)
Code retour
Horodatage au format "AAAA-MM-JJ HH:MM:SS"
Remarques
La fonction de Script soustrait l'heure au format "HH:MM:SS" d'un horodatage indiqué au format "AAAAMM-JJ HH:MM:SS".
Il est pour cela calculé selon l'UTC : les heures d'été et d'hiver ne sont pas prises en compte. Etant donné
que les heures, les minutes et les secondes ne peuvent pas dépasser la valeur maximale 99, le résultat de
la fonction de Script peut être légèrement supérieur à 4 jours avant l'horodatage d'origine.
Exemple
L'exemple soustrait une seconde de l'horodatage. Le résultat "31.12.03 23:59:59" est affiché dans le
protocole d'activation.
:SET &RET# = SUB_TIMESTAMP("2004-01-01 00:00:00", "00:00:01")
:PRINT &RET#
Rubriques connexes :
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
358
Chapter 3 Organisation fonctionnelle
3.12.17 SYS_DATE
Fonction script : Détermine la date du jour actuelle en vue du lancement du traitement de script.
Syntaxe
SYS_DATE([Format de date][,Fuseau horaire])
Elément de syntaxe
Description/format
Format de date
Format prédéfini de la date déterminée.
Format: littéral de Script ou Variable de Script
Par défaut : "AAMMJJ"
Fuseau horaire
Nom d'un objet Fuseau horaire ou mot clé UTC.
Format : littéral de Script ou Variable de Script
Code retour
Date du jour actuelle au format indiqué.
Remarques
Les fonctions de Script déterminent la date du jour actuelle. Un Fuseau horaire indiqué comme paramètre
est pour cela pris en compte.
Le format de date est facultatif. Il sert à déterminer le format dans lequel la fonction doit renvoyer sa valeur.
Si vous n'avez pas indiqué de format de date, le format par défaut "AAMMJJ" est renvoyé.
Le Fuseau horaire est également facultatif. Si la fonction de Script est exécutée sans ce paramètre, le
Fuseau horaire de l'objet ou du Client est utilisé quand aucun Fuseau horaire n'a été défini pour l'objet luimême. Si un Fuseau horaire non défini a été indiqué, le calcul se fait automatiquement avec la valeur par
défaut (Fuseau horaire du Client). Au lieu d'un Fuseau horaire, vous pouvez également utiliser le mot clé
UTC. La date est alors transmise directement à l'UTC (Universal Time Coordinated).
La date du jour actuelle est déterminée et "figée" au lancement du traitement de Script. La cohérence du
Script est ainsi assurée. Si vous utilisez plusieurs fois la fonction de Script au sein d'un Script, la même
date du jour est toujours renvoyée. Cela s'applique en particulier aussi lorsque le traitement de Script est
interrompu par une instruction :WAIT pour une période spécifiée.
Pour transmettre la date du jour déterminée à un objet Variable de type "horodatage" avec l'instruction
:PUT_VAR, il faut utiliser les formats de date "AAMMJJ" (valeur par défaut), "AAAAMMJJ" ou "AAAAMM-JJ". En raison de la présence de l'enregistreur dans la Variable, ce format de date est perdu dans la
plate-forme Windows. L'affichage de la date se base alors sur les paramètres régionaux dans le panneau
de configuration de Windows.
Exemples
Le premier exemple détermine la date du jour actuelle et en transmet la valeur à une Variable de Script. Le
deuxième exemple doit montrer qu'il est possible de saisir des paramètres spéciaux. Le jour de la semaine
est défini et utilisé comme paramètre de fonction d'une Variable de Script.
:SET &DATE# = SYS_DATE("JJ.MM.AAAA")
Automation Engine
359
:SET &FORMAT# = "WW"
:SET &JOUR_SEMAINE# = SYS_DATE(&FORMAT#)
Si la fonction est utilisée sans indiquer de format de date, la syntaxe se présente comme dans l'exemple
suivant.
:IF SYS_DATE() = "990101"
!...
:ENDIF
Le troisième exemple détermine la date du jour actuelle et l'enregistre dans un objet Variable de type
"horodatage". On tient compte alors d'un Fuseau horaire défini pour l'heure d'Europe centrale.
:SET &DATE# = SYS_DATE("AAAA-MM-JJ","TZ.MEZ")
:PUT_VAR DATEDERESERVATION, , &DATE#
Rubriques connexes :
Elément de script
Description
CONV_DATE
Convertit le format d'une date.
DIFF_DATE
Détermine la différence entre deux données de date en jours.
SYS_DATE_PHYSICAL
Détermine la date du jour actuelle.
SYS_LDATE
Détermine la date logique.
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.18 SYS_DATE_PHYSICAL
Fonction script : Détermine la date du jour actuelle.
Syntaxe
SYS_DATE_PHYSICAL ([Format de date][,Fuseau horaire])
Elément de syntaxe
Description/format
Format de date
Format prédéfini de la date déterminée.
Format: littéral de script ou Variable de script
Valeur par défaut: "AAMMJJ"
Fuseau horaire
Nom d'un objet Fuseau horaire ou mot clé UTC.
Format : Littéral de script ou Variable de script
Code retour
Date du jour actuelle au format indiqué.
360
Chapter 3 Organisation fonctionnelle
Remarques
La fonction de Script détermine la date actuelle du jour. Un Fuseau horaire indiqué comme paramètre est
pour cela pris en compte.
Si la fonction de Script est utilisée plusieurs fois dans un Script, cela peut parfois entraîner des
résultats différents (par exemple, un changement de date entre la première et la deuxième exécution). La
fonction de Script est donc différente de SYS_DATE, qui détermine l'heure actuelle du jour au début du
traitement du Script, puis la "gèle" pour garantir la cohérence de celui-ci.
Le format de date est facultatif. Il sert à déterminer le format dans lequel la fonction doit renvoyer sa valeur.
Si vous n'avez pas indiqué de format de date, le format par défaut "AAMMJJ" est renvoyé.
Le Fuseau horaire est également facultatif. Si la fonction de Script est exécutée sans ce paramètre, le
Fuseau horaire de l'objet ou du Client est utilisé quand aucun Fuseau horaire n'a été défini pour l'objet luimême. Si un Fuseau horaire non défini a été indiqué, le calcul se fait automatiquement avec la valeur par
défaut (Fuseau horaire du Client). Au lieu d'un Fuseau horaire, vous pouvez également utiliser le mot clé
UTC. La date est alors transmise directement à l'UTC (Universal Time Coordinated).
Exemples
Le premier exemple détermine la date du jour actuelle et en transmet la valeur à une Variable de Script. Le
deuxième exemple doit montrer qu'il est possible de saisir des paramètres spéciaux. Le jour de la semaine
est défini et utilisé comme paramètre de fonction d'une Variable de Script.
:SET &DATE# = SYS_DATE_PHYSICAL('JJ.MM.AAAA')
:SET &FORMAT# = 'WW'
:SET &JOUR_SEMAINE# = SYS_DATE_PHYSICAL(&FORMAT#)
Si la fonction est utilisée sans indiquer de format de date, la syntaxe se présente comme dans l'exemple
suivant.
:IF SYS_DATE_PHYSICAL() = '990101'
!...
:ENDIF
Dans le troisième exemple, la date actuelle du jour est déterminée. On tient compte alors d'un Fuseau
horaire défini pour l'heure d'Europe centrale. Le résultat s'affiche dans le protocole d'activation.
:SET &DATE# = SYS_DATE_PHYSICAL('AAAA-MM-JJ','TZ.MEZ')
:PRINT &DATE#
Rubriques connexes :
Elément de script
Description
CONV_DATE
Convertit le format d'une date.
DIFF_DATE
Détermine la différence entre deux données de date en jours.
SYS_LDATE
Détermine la date logique.
SYS_DATE
Détermine la date du jour actuelle en vue du lancement du traitement de script.
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
Automation Engine
361
3.12.19 SYS_LDATE
Fonction script : Détermine la date logique.
Syntaxe
SYS_LDATE([Format de date])
Elément de syntaxe
Description/format
Format de date
Format prédéfini de la date déterminée.
Format: littéral de script ou Variable de script
Valeur par défaut: "AAMMJJ"
Code retour
Date logique au format indiqué.
Remarques
Pour exécuter des Tâches avec options, vous pouvez indiquer une date logique. La fonction de script
détermine cette date.
Le format de date est facultatif. Il sert à déterminer le format dans lequel la fonction doit renvoyer sa valeur.
Si vous n'avez pas indiqué de format de date, le format par défaut "AAMMJJ" est renvoyé.
Attention : la fonction script !Scripts exécutée à partir des résultats n'indique pas la date logique, mais
la date actuelle !
Exemple
L'exemple suivant détermine la date logique au format "JJ.MM.AAAA".
:SET &LDATE# = SYS_LDATE("JJ.MM.AAAA")
Rubriques connexes :
Elément de script
Description
CONV_DATE
Convertit le format d'une date.
DIFF_DATE
Détermine la différence entre deux données de date en jours.
SYS_DATE
Détermine la date du jour actuelle en vue du lancement du traitement de
script.
SYS_DATE_
PHYSICAL
Détermine la date du jour actuelle.
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
362
Chapter 3 Organisation fonctionnelle
3.12.20 SYS_TIME
Fonction script : Définit l'heure du jour actuelle en vue du lancement du traitement de script.
Syntaxe
SYS_TIME([Format d'heure][,Fuseau horaire])
Elément de syntaxe
Description/format
Format d'heure
Format prédéfini pour l'heure indiquée.
Format : littéral de Script ou Variable de Script
Par défaut : "HHMMSS"
Fuseau horaire
Nom d'un objet Fuseau horaire ou mot clé UTC.
Format : Littéral de script ou Variable de script
Code retour
Heure actuelle au format indiqué.
Remarques
Les fonctions de Script déterminent l'heure du jour actuelle. Un Fuseau horaire indiqué comme paramètre
est pour cela pris en compte.
Le format d'heureest facultatif. Il sert à déterminer le format dans lequel la fonction doit renvoyer sa valeur.
Si vous n'avez pas indiqué de format d'heure, le format par défaut "HHMMSS" est utilisé.
Le Fuseau horaire est également facultatif. Si la fonction de Script est exécutée sans ce paramètre, le
Fuseau horaire de l'objet ou du Client est utilisé quand aucun Fuseau horaire n'a été défini pour l'objet luimême. Si un Fuseau horaire non défini a été indiqué, le calcul se fait automatiquement avec la valeur par
défaut (Fuseau horaire du Client). Au lieu d'un Fuseau horaire, vous pouvez également utiliser le mot clé
UTC. L'heure est renvoyée directement en UTC (temps universel coordonné).
L'heure du jour actuelle est déterminée et "figée" au lancement du traitement de Script. La cohérence du
Script est ainsi assurée. Si vous utilisez plusieurs fois la fonction de Script au sein d'un Script, la même
heure du jour est toujours renvoyée. Cela s'applique en particulier aussi lorsque le traitement de Script est
interrompu par une instruction :WAIT pour une période spécifiée.
Pour transmettre l'heure du jour déterminée à un objet Variable de type "horodatage" avec l'instruction
:PUT_VAR, il faut utiliser le format d'heure "HHMMSS" (valeur par défaut) ou "HH:MM:SS". En raison de
la présence de l'enregistreur dans la Variable, ce format d'heure est perdu dans la plate-forme Windows.
L'affichage de l'heure se base alors sur les paramètres régionaux dans le panneau de configuration de
Windows.
L'heure peut toujours être enregistrée en même temps qu'une date dans une Variable de type
"horodatage". Seules les combinaisons de formats de date et d'heure suivantes sont autorisées :
"AAMMJJ HHMMSS" (par défaut), "AAAA-MM-JJ HH:MM:SS" et "AAAAMMJJ HHMMSS".
Exemples
Le premier exemple détermine l'heure du jour actuelle et en transmet la valeur à une Variable de Script. On
tient compte alors d'un Fuseau horaire défini pour l'heure d'Europe centrale. Le résultat s'affiche dans le
Automation Engine
363
protocole d'activation.
:SET &HEURE# = SYS_TIME("HH:MM:SS","TZ.MEZ")
:PRINT &HEURE#
Le deuxième exemple utilise un paramètre spécial transmis par une Variable de Script. Il définit
uniquement les secondes de l'heure du jour actuelle.
:SET &FORMAT# = "SS"
:SET &HEURE# = SYS_TIME(&FORMAT#)
Si la fonction est utilisée sans indication de format d'heure et de Fuseau horaire, la syntaxe est celle de
l'exemple suivant.
:IF SYS_TIME() = "120000"
!...
:ENDIF
Le troisième exemple détermine la date du jour et l'heure du jour actuelles et les enregistre dans un objet
Variable de type "horodatage". Les valeurs par défaut s'appliquent aux formats de date et d'heure.
:SET &DATE# = SYS_DATE()
:SET &HEURE# = SYS_TIME()
:PUT_VAR DATEDERESERVATION, , "&DATE# &HEURE#"
Rubriques connexes :
Elément de script
Description
SYS_TIME_PHYSICAL
Définit l'heure du jour actuelle.
SYS_TIMESTAMP_PHYSICAL
Indique la date et l'heure actuelles.
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.21 SYS_TIME_PHYSICAL
Fonction du Script : définit l'heure actuelle du jour.
Syntaxe
SYS_TIME_PHYSICAL([Format d'heure][,Fuseau horaire])
Elément de syntaxe
Description/format
Format d'heure
Format prédéfini pour l'heure indiquée.
Format : littéral de Script ou Variable de Script
Par défaut : "HHMMSS"
Fuseau horaire
Nom d'un objet Fuseau horaire ou mot clé UTC.
Format : Littéral de script ou Variable de script
Code retour
Heure actuelle au format indiqué.
364
Chapter 3 Organisation fonctionnelle
Remarques
La fonction de Script détermine l'heure actuelle du jour. Un Fuseau horaire indiqué comme paramètre est
pour cela pris en compte.
Si la fonction de Script est utilisée plusieurs fois dans un Script, cela peut parfois entraîner des
résultats différents (par exemple, en cas de demande précise de secondes ou de minutes). La fonction de
Script est donc différente de SYS_TIME, qui détermine l'heure actuelle du jour au début du traitement du
Script, puis la "gèle" pour garantir la cohérence du Script.
Le format d'heureest facultatif. Il sert à déterminer le format dans lequel la fonction doit renvoyer sa valeur.
Si vous n'avez pas indiqué de format d'heure, le format par défaut "HHMMSS" est utilisé.
Le Fuseau horaire est également facultatif. Si la fonction de Script est exécutée sans ce paramètre, le
Fuseau horaire de l'objet ou du Client est utilisé quand aucun Fuseau horaire n'a été défini pour l'objet luimême. Si un Fuseau horaire non défini a été indiqué, le calcul se fait automatiquement avec la valeur par
défaut (Fuseau horaire du Client). Au lieu d'un Fuseau horaire, vous pouvez également utiliser le mot clé
UTC. L'heure est renvoyée directement en UTC (temps universel coordonné).
Exemples
Le premier exemple détermine chaque heure actuelle du jour et transmet la valeur à la Variable de Script.
Le résultat correspond à deux heures séparées par 10 secondes au moins.
:SET &HEURE1# = SYS_TIME_PHYSICAL("HH:MM:SS")
:WAIT 10
:SET &HEURE2# = SYS_TIME_PHYSICAL("HH:MM:SS")
Dans le deuxième exemple, l'heure actuelle du jour est ensuite déterminée dans l'UTC. Lors de la
deuxième exécution de la fonction de Script, un Fuseau horaire défini pour l'heure d'Europe centrale est
indiqué. Le résultat correspond à deux heures séparées par 1 heure et 10 secondes au moins.
:SET &HEURE1# = SYS_TIME_PHYSICAL("HH:MM:SS","UTC")
:WAIT 10
:SET &HEURE2# = SYS_TIME_PHYSICAL("HH:MM:SS","TZ.MEZ")
Dans le troisième exemple, un paramètre spécial est utilisé et transmis par une Variable de Script. Seules
les minutes de l'heure actuelle du jour sont définies.
:SET &FORMAT# = "MM"
:SET &HEURE# = SYS_TIME_PHYSICAL(&FORMAT#)
Si la fonction est utilisée sans indiquer de format d'heure, la syntaxe se présente comme dans l'exemple
suivant.
:IF SYS_DATE_PHYSICAL() = '120000'
!...
:ENDIF
Rubriques connexes :
Elément de script
Description
SYS_TIME
Définit l'heure du jour actuelle en vue du lancement du traitement de
script.
SYS_TIMESTAMP_
PHYSICAL
Indique la date et l'heure actuelles.
Automation Engine
365
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.12.22 SYS_TIMESTAMP_PHYSICAL
Fonction script : Indique la date et l'heure actuelles.
Syntaxe
SYS_TIMESTAMP_PHYSICAL([Fuseau horaire])
Elément de syntaxe
Description/format
Fuseau horaire
Nom d'un objet Fuseau horaire ou mot clé UTC.
Format : littéral de script ou Variable de script
Valeur par défaut: "UTC"
Code retour
Date et heure actuelles au format "AAAA-MM-JJ HH:MM:SS"
Remarques
Si le mot-clé UTC est utilisé ou que la fonction de Script est exécutée sans paramètre, la date et l'heure
sont renvoyées dans l'UTC (Coordinated Universal Time).
Exemple
L'exemple détermine la date et l'heure actuelles de Sydney. Le nom d'un objet fuseau horaire, défini pour
l'heure standard de l'Australie orientale, est indiqué comme paramètre. Le code retour de la fonction de
Script s'affiche dans le protocole d'activation.
:SET &MAINTENANT# = SYS_TIMESTAMP_PHYSICAL("TZ.SYD")
:PRINT &MAINTENANT#
Rubriques connexes :
Elément de script
Description
SYS_TIME
Définit l'heure du jour actuelle en vue du lancement du traitement de script.
SYS_TIME_PHYSICAL
Définit l'heure du jour actuelle.
Scripts - Date et heure
Heure
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
366
Chapter 3 Organisation fonctionnelle
3.12.23 VALID_CALE
Fonction script : Vérifie qu'une date est contenue dans un Calendrier.
Syntaxe
VALID_CALE(Date, Groupe Calendrier, Calendrier)
Elément de syntaxe
Description/format
Date
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
Groupe Calendrier
Nom de l'objet Groupe Calendrier.
Format : nom UC4, littéral de Script ou Variable de Script
Calendrier
Nom de l'objet Calendrier.
Format : nom UC4, littéral de script ou Variable de script
Codes retour
"Y" - La date est comprise dans le Calendrier.
"N" - La date n'est pas comprise dans le Calendrier.
Remarques
L'indication du format de date est facultative. Si aucun format de date spécifique n'est utilisé, la date doit
être indiquée au format "AAMMJJ" ou "AAAAMMJJ". Deux points ou un point-virgule sont autorisés
comme séparateur entre le format de date et la date.
Exemple
L'exemple vérifie si la date du jour actuelle dans le Calendrier d'astreinte est valable. Le code retour de la
fonction de Script est transmis à une Variable de Script.
:SET &DATEACT# = SYS_DATE()
:SET&OPERATEUR# = VALID_CALE(&DATEACT#,"Disposition","Jour ouvré")
Rubriques connexes :
Elément de script
Description
VALID_DATE
Vérifie si une date est valable.
VALID_TIME
Vérifie si une heure est valide.
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
Automation Engine
367
3.12.24 VALID_DATE
Fonction du Script : vérifie si une date est valide.
Syntaxe
VALID_DATE(Date)
Elément de syntaxe
Description/format
Date
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
Codes retour
"Y" - La date est valide.
"N" - La date n'est pas valide.
Remarques
Si aucun format de date spécifique n'est utilisé, la date doit être indiquée au format "AAMMJJ" ou
"AAAAMMJJ". Deux points ou un point-virgule sont autorisés comme séparateur entre le format de date et
la date.
Si la fonction renvoie le code retour "N", vous pouvez analyser l'erreur survenue à l'aide du Script pour le
traitement des erreurs.
Exemple
L'exemple vérifie si l'année 2001 est bissextile. Le résultat (N) s'affiche dans le protocole d'activation.
:SET &RET#=VALID_DATE("JJ.MM.AAAA:29.02.2001")
:PRINT &RET#
Rubriques connexes :
Elément de script
Description
VALID_CALE
Vérifie qu'une date est contenue dans un Calendrier.
VALID_TIME
Vérifie si une heure est valide.
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
368
Chapter 3 Organisation fonctionnelle
3.12.25 VALID_TIME
Fonction du Script : vérifie si une heure est valide.
Syntaxe
VALID_TIME(Heure)
Elément de syntaxe
Description/format
Heure
Entrée d'une heure au format "HHMMSS".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer l'heure dans un autre Format d'heure. Saisissez ainsi
en premier le format d'heure souhaité suivi d'un séparateur (;) puis l'heure.
L'indication du format d'heure est facultative.
Codes retour
"Y" - L'heure est valide.
"N" - L'heure n'est pas valide.
Remarques
Si aucun format de l'heure spécifique n'est utilisé, l'heure doit être indiquée au format standard
"HHMMSS". Seul le point-virgule peut être utilisé comme séparateur entre le format d'heure et l'heure.
Exemples
L'exemple vérifie si l'heure indiquée est valide. Le résultat (N) s'affiche dans le protocole d'activation.
:SET &RET#=VALID_TIME("HH:MM:SS;24:00:00")
:PRINT &RET#
Le deuxième exemple produit un résultat positif (Y).
:SET &RET#=VALID_TIME("HH:MM:SS;00:00:00")
:PRINT &RET#
Rubriques connexes :
Elément de script
Description
VALID_CALE
Vérifie qu'une date est contenue dans un Calendrier.
VALID_DATE
Vérifie si une date est valable.
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
Automation Engine
369
3.12.26 WEEK_NR
Fonction script : indique la semaine calendaire correspondant à une date.
Syntaxe
WEEK_NR(Date)
Elément de syntaxe
Description/format
Date
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
Code retour
Semaine calendaire (à 3 chiffres)
Remarques
L'indication du format de date est facultative. Si aucun format de date spécifique n'est utilisé, la date doit
être indiquée au format "AAMMJJ" ou "AAAAMMJJ". Deux points ou un point-virgule sont autorisés
comme séparateur entre le format de date et la date.
Le calcul de la semaine calendaire dépend de la définition de la première semaine de l'année ! C'est
l'administrateur UC4 qui définit quelle semaine est la première semaine calendaire, et ce dans la Variable
UC4 UC_CLIENT_SETTINGS avec les Clefs "FIRST_WEEK_METHOD" et "FIRST_DAY_OF_WEEK".
Exemple
L'exemple indique la semaine calendaire "052" pour le jour indiqué.
:SET &SEMCAL# = WEEK_NR("991231")
Rubriques connexes :
Elément de script
Description
WEEKDAY_NR
Indique avec un chiffre le jour de la semaine d'une date.
WEEKDAY_XX
Indique avec un code le jour de la semaine d'une date.
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
370
Chapter 3 Organisation fonctionnelle
3.12.27 WEEKDAY_NR
Fonctions de Script : Indique avec un chiffre le jour de la semaine d'une date.
Syntaxe
WEEKDAY_NR(Date)
Elément de syntaxe
Description/format
Date
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
Codes retour
"1" - lundi
"2" - mardi
"3" - mercredi
"4" - jeudi
"5" - vendredi
"6" - samedi
"7" - dimanche
Remarques
L'indication d'un format de date est facultatif. Si aucun format de date spécifique n'est utilisé, la date doit
être indiquée au format "AAMMJJ" ou "AAAAMMJJ". Deux points ou un point-virgule sont autorisés
comme séparateur entre le format de date et la date.
Exemples
Ces exemples renvoient les valeurs "5" et "6" pour la date indiquée.
:SET &31DECEMBRE1999# = WEEKDAY_NR('JJ.MM.AA:31.12.99')
:SET &NOUVELAN2000# = WEEKDAY_NR("JJ.MM.AAAA:01.01.2000")
Rubriques connexes :
Elément de script
Description
WEEK_NR
indique la semaine calendaire correspondant à une date.
WEEKDAY_XX
Indique avec un code le jour de la semaine d'une date.
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
Automation Engine
371
3.12.28 WEEKDAY_XX
Fonction script : Indique avec un code le jour de la semaine d'une date.
Syntaxe
WEEKDAY_XX(Date)
Elément de syntaxe
Description/format
Date
Entrée d'une date au format "AAMMJJ" ou "AAAAMMJJ".
Format : Littéral de script ou Variable de script
Il est possible d'indiquer la date dans un autre Format de date. Saisissez ainsi
en premier le format de date souhaité suivi d'un séparateur (: ou ;) puis la date.
L'indication du format de date est facultative.
Codes retour
"LU" - lundi
"MA" - mardi
"ME" - mercredi
"JE" - jeudi
"VE" - vendredi
"SA" - samedi
"DI" - dimanche
Remarques
L'indication d'un format de date est facultative. Si aucun format de date spécifique n'est utilisé, la date doit
être indiquée au format "AAMMJJ" ou "AAAAMMJJ". Deux points ou un point-virgule sont autorisés
comme séparateur entre le format de date et la date.
Exemples
L'exemple renvoie les valeurs "VE" et "SA" pour la date indiquée.
:SET &31DECEMBRE1999# =WEEKDAY_XX("991231")
:SET &NOUVELAN2000# = WEEKDAY_XX("JJ-MM-AAAA:01-01-2000")
Rubriques connexes :
Elément de script
Description
WEEK_NR
indique la semaine calendaire correspondant à une date.
WEEKDAY_NR
Indique avec un chiffre le jour de la semaine d'une date.
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
372
Chapter 3 Organisation fonctionnelle
3.12.29 YEAR_9999
Fonction script : Extrait l'année d'une date donnée.
Syntaxe
YEAR_9999 ( [Format de date :]Date)
Elément de syntaxe
Description/format
Format de date
Format prédéfini de la date indiquée.
: ou ;
Séparateur entre le format de date et la date.
Date
Indication d'une date correspondant au format de date.
[Format de date :]Date
Format : Littéral de script ou Variable de script
Code retour
Année (à 4 chiffres)
Remarques
L'indication du format de date est facultative. Si le format de date n'est pas utilisé, la date doit être indiquée
au format "AAMMJJ" ou "AAAMMJJ". Deux points ou un point-virgule sont autorisés comme séparateur
entre le format de date et la date.
Exemple
L'exemple indique la valeur "2000" pour l'année de la date donnée.
: SET
&ANNEE#
= YEAR_9999 ( "JJ.MM.AA:31.12.00" )
Rubriques connexes :
Scripts - Date et heure
Formats de date, d'heure et de période
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.13 Calcul
3.13.1 ADD
Fonction script : Exécute une addition.
Automation Engine
373
Syntaxe
ADD(Opérande1, Opérande2)
Elément de syntaxe
Description/format
Opérande1
Première expression de calcul.
Format : littéral de Script, variable de Script ou nombre sans guillemets
Opérande2
Deuxième expression de calcul.
Format : littéral de script, nombre sans guillemets ou Variable de script
Code retour
Résultat de l'addition
Remarques
La fonction de Script additionne Opérande1 et Opérande2.
Opérande1 et Opérande2 doivent être des expressions qui correspondent aux nombres dans le domaine de
valeur des Types de données. Le résultat ne doit en aucun cas dépasser ce domaine.
Si le résultat d'une Variable de Script est affecté, celle-ci doit présenter le type de données correspondant.
Lors d'une tentative d'enregistrement d'un nombre négatif comportant le type de données "unsigned" dans
une Variable, une erreur apparaît. S'il s'agit, lors du résultat, d'un nombre à virgule flottante et si la Variable
de destination possède le type de données "signed" ou "unsigned", les chiffres après la virgule sont
supprimés. Le type de données "flottant" prend en charge tant les nombres négatifs que les nombres
variables. De plus, le type de données "chaîne" est également possible tant que le résultat n'est pas
stocké comme un nombre mais comme une chaîne de caractères. Le type de données des Variables de
Script est défini avec le Script :DEFINE.
Le système compte toujours le type de données du résultat, et non celui des opérandes ! Un opérande
négatif ou positif peut produire un nombre positif qui peut à son tour être enregistré dans une Variable de
destination avec le type de données "unsigned".
Attention : lors d'opérations de calcul avec des nombres variables, le résultat peut être imprécis !
Le résultat est retourné dans le format par défaut à 16 caractères. Les nombres variables possèdent 16
caractères supplémentaires après la virgule et lorsque des nombres négatifs sont pris en charge, le signe
respectif (+ ou -) est placé en première position. Pour modifier le formatage, utilisez la fonction script
FORMAT.
Exemples
Dans l'exemple, le résultat de l'opération arithmétique est transmis à une Variable de Script. Opérande1 et
Opérande2 sont indiqués dans une expression numérique.
:SET &RESULTAT# = ADD(1000,333)
Dans cet exemple, la fonction est utilisée pour formuler une condition.
:SET &MAXIMUM# = 3000
:SET &EXEC1# = 5000
:SET &EXEC2# = 2000
!...
374
Chapter 3 Organisation fonctionnelle
:IF ADD(&EXEC1#,&EXEC2#) > &MAXIMUM#
!...
:ENDIF
Deux nombres variables sont ajoutés dans les exemples suivants.
:DEFINE &RESULTAT#,float
:SET &RESULTAT# = ADD(10.31,-5.45)
:P&RESULTAT#
Le résultat s'affiche dans le protocole d'activation de la façon suivante .
U0020408 +0000000000000004.8600000000000000
Rubriques connexes :
Elément de script
Description
SUB
Exécute une soustraction.
MULT
Exécute une multiplication.
DIV
Exécute une division.
MOD
Indique le quotient d'une division.
RANDOM
Génère des nombres aléatoires.
Scripts – Calculs
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.13.2 DIV
Fonction script : Exécute une division.
Syntaxe
DIV(Opérande1, Opérande2)
Elément de syntaxe
Description/format
Opérande1
Première expression de calcul.
Format : littéral de Script, variable de Script ou nombre sans guillemets
Opérande2
Deuxième expression de calcul.
Format : littéral de script, nombre sans guillemets ou Variable de script
Code retour
Résultat de la division
Remarques
La fonction de Script divise Opérande1 par Opérande2.
Automation Engine
375
Opérande1 et Opérande2 doivent être des expressions qui correspondent aux nombres dans le domaine de
valeur des Types de données. Le résultat ne doit en aucun cas dépasser ce domaine.
L' Opérande2 doit être différent de zéro !
Si le résultat d'une Variable de Script est affecté, celle-ci doit présenter le type de données correspondant.
Lors d'une tentative d'enregistrement d'un nombre négatif comportant le type de données "unsigned" dans
une Variable, une erreur apparaît. S'il s'agit, lors du résultat, d'un nombre à virgule flottante et si la Variable
de destination possède le type de données "signed" ou "unsigned", les chiffres après la virgule sont
supprimés. Le type de données "flottant" en revanche prend en charge tant les nombres négatifs que les
nombres variables. De plus, le type de données "chaîne" est également possible tant que le résultat n'est
pas stocké comme un nombre mais comme une chaîne de caractères. Le type de données des Variables
de Script est défini dans la définition avec le Script :DEFINE.
Le système compte toujours le type de données du résultat, et non celui des opérandes ! Exemple : Deux
opérandes négatifs produisent un nombre positif qui peut à son tour être enregistré dans une Variable de
destination avec le type de données "unsigned".
Attention : lors d'opérations de calcul avec des nombres variables, le résultat peut être imprécis !
Le résultat est retourné dans le format par défaut à 16 caractères. Les nombres variables possèdent 16
caractères supplémentaires après la virgule et lorsque des nombres négatifs sont pris en charge, le signe
respectif (+ ou -) est placé en première position. Pour modifier le formatage, utilisez la fonction script
FORMAT.
Exemples
Dans l'exemple, "5" est le résultat de l'opération arithmétique transmis à une Variable de Script. Des
Variables de Script sont utilisées pour Opérande1 et Opérande2.
:SET &OP1# = '100'
:SET &OP2# = '20'
:SET &RESULTAT# = DIV(&OP1#,&OP2#)
Si le type de données ne correspond pas à "flottant" (ou "chaîne"), les chiffres après une virgule sont
supprimés. Dans l'exemple suivant, la valeur "0" est donc enregistrée dans la Variable.
:DEFINE&RESULTAT#, unsigned
:SET &RESULTAT# = DIV(10,30)
L'exemple suivant montre une division avec des nombres variables.
:DEFINE &RESULTAT#,float
:SET &RESULTAT# = DIV(-9,-2.25)
:P&RESULTAT#
Le résultat s'affiche dans le protocole d'activation de la façon suivante .
U0020408 +0000000000000004.0000000000000000
Rubriques connexes :
Elément de script
Description
ADD
Exécute une addition.
SUB
Exécute une soustraction.
MULT
Exécute une multiplication.
376
Chapter 3 Organisation fonctionnelle
MOD
Indique le quotient d'une division.
RANDOM
Génère des nombres aléatoires.
Scripts – Calculs
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.13.3 GET_BIT
Fonction script : Vérifie si un bit particulier est défini dans un champ de bit.
Syntaxe
GET_BIT(nombre, position du bit)
Elément de syntaxe
Description/format
Nombre
Nombre qui est transformé au format binaire (champ de bit).
Format : nombre ou Variable de Script
Position de bit
Position dans le champ de bit qui doit être vérifiée.
Format : nombre ou Variable de Script
Code retour
"0" – Le bit est activé.
"1" – Le bit n'est pas activé.
Remarques
La fonction de Script convertit au format binaire le nombre transmis avec le premier paramètre. On obtient
alors ce qu'on appelle un champ de bit. Le système vérifie ensuite si le bit de la position indiquée est activé
ou non.
La position du bit est toujours déterminée en partant de la droite.
La fonction de Script sert également à pouvoir demander les champs à 16 bits MSG_DESCRIPTOR,
MSG_LEVEL et MSG_MISC d'un message de console dans z/OS. Ils peuvent également être demandés
directement avec la fonction de Script GET_CONSOLE.
Exemples
Dans le premier exemple, le système vérifie si le troisième bit du champ de bit ("110"), qui correspond au
nombre 6, est activé. Le Code Retour "1" (le bit est activé) est émis dans le protocole d'activation.
:SET &RET# = GET_BIT(6, 3)
:PRINT &RET#
Le deuxième exemple détermine un élément du message de console dans z/OS. Le nombre renvoyé est
ensuite converti sous forme binaire et vérifié dans la position de bit 3.
:SET &RET# = GET_CONSOLE("MSG_DESCRIPTOR")
:SET &RET# = GET_BIT(&RET#, 3)
Automation Engine
377
Rubriques connexes :
Elément de script
Description
GET_CONSOLE
Lit les données de message de l'Evènement de console survenu.
Scripts – Calculs
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.13.4 MOD
Fonction script : Indique le quotient d'une division.
Syntaxe
MOD(Opérande1, Opérande2)
Elément de syntaxe
Description/format
Opérande1
Première expression de calcul.
Format : littéral de Script, variable de Script ou nombre sans guillemets
Opérande2
Deuxième expression de calcul.
Format : littéral de script, nombre sans guillemets ou Variable de script
Code retour
Quotient de la division
Remarques
La fonction de Script indique le reste de la division de Opérande1 par Opérande2.
Pour Opérande1 et Opérande2 il doit s'agir de nombres entiers dans le domaine de valeur autorisé
destypes de données "unsigned" ou "signed" ! Les nombres variables ne sont pas pris en charge ! Pour le
résultat, il s'agit également d'un nombre entier positif ou négatif.
L' Opérande2 doit être différent de zéro !
Exemple
Dans l'exemple suivant, la fonction renvoie le résultat "1".
:SET &rest# = MOD(10,3)
Le deuxième exemple a pour résultat "10".
:SET &rest# = MOD(10,44)
Rubriques connexes :
378
Chapter 3 Organisation fonctionnelle
Elément de script
Description
ADD
Exécute une addition.
SUB
Exécute une soustraction.
MULT
Exécute une multiplication.
DIV
Exécute une division.
RANDOM
Génère des nombres aléatoires.
Scripts – Calculs
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.13.5 MULT
Fonction script : Exécute une multiplication.
Syntaxe
MULT(Opérande1, Opérande2)
Elément de syntaxe
Description/format
Opérande1
Première expression de calcul.
Format : littéral de Script, variable de Script ou nombre sans guillemets
Opérande2
Deuxième expression de calcul.
Format : littéral de script, nombre sans guillemets ou Variable de script
Code retour
Résultat de la multiplication
Remarques
La fonction de Script multiplie Opérande1 par Opérande2.
Opérande1 et Opérande2 doivent être des expressions qui correspondent aux nombres dans le domaine de
valeur des Types de données. Le résultat ne doit en aucun cas dépasser ce domaine.
Si le résultat d'une Variable de Script est affecté, celle-ci doit présenter le type de données correspondant.
Lors d'une tentative d'enregistrement d'un nombre négatif comportant le type de données "unsigned" dans
une Variable, une erreur apparaît. S'il s'agit, lors du résultat, d'un nombre à virgule flottante et si la Variable
de destination possède le type de données "signed" ou "unsigned", les chiffres après la virgule sont
supprimés. Le type de données "flottant" prend en charge tant les nombres négatifs que les nombres
variables. De plus, le type de données "chaîne" est également possible tant que le résultat n'est pas
stocké comme un nombre mais comme une chaîne de caractères. Le type de données des Variables de
Script est défini dans la définition avec le Script :DEFINE.
Le système compte toujours le type de données du résultat, et non celui des opérandes ! Exemple : Deux
opérandes négatifs produisent un nombre positif qui peut à son tour être enregistré dans une Variable de
destination avec le type de données "unsigned".
Automation Engine
379
Attention : lors d'opérations de calcul avec des nombres variables, le résultat peut être imprécis !
Le résultat est retourné dans le format par défaut à 16 caractères. Les nombres variables possèdent 16
caractères supplémentaires après la virgule et lorsque des nombres négatifs sont pris en charge, le signe
respectif (+ ou -) est placé en première position. Pour modifier le formatage, utilisez la fonction script
FORMAT.
Exemple
Dans l'exemple, le résultat de l'opération arithmétique est transmis à une Variable de Script. L'exemple a
pour résultat "100".
:SET &OP1# = 4
:SET &OP2# = 25
:SET &RESULTAT# = MULT(&OP1#,&OP2#)
L'exemple suivant montre une multiplication avec des nombres variables.
:DEFINE &RESULTAT#,float
:SET &RESULTAT# = MULT(-10.31,5.45)
:P&RESULTAT#
Le résultat s'affiche dans le protocole d'activation de la façon suivante .
U0020408 -0000000000000056.1895000000000000
Rubriques connexes :
Elément de script
Description
ADD
Exécute une addition.
SUB
Exécute une soustraction.
MOD
Indique le quotient d'une division.
DIV
Exécute une division.
RANDOM
Génère des nombres aléatoires.
Scripts – Calculs
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.13.6 RANDOM
Fonction script : Génère des nombres aléatoires.
Syntaxe
RANDOM(minimum, maximum[, base])
Elément de syntaxe
Description/format
Minimum
Valeur minimale du nombre aléatoire généré.
Format : nombre ou Variable de Script
380
Chapter 3 Organisation fonctionnelle
Maximum
Valeur maximale du nombre aléatoire généré.
Format : nombre ou Variable de script Base
Valeur initiale pour la génération.
Format : nombre ou Variable de script Code retour
Nombre aléatoire dans l'intervalle indiqué.
Remarques
La fonction de Script RANDOM génère des nombres aléatoires. Un générateur de nombres produit une
série de nombres déterminés par la valeur initiale (la base).
Si le paramètre base n'est pas indiqué, le code retour est un chiffre qui change sans cesse dans l'intervalle
compris entre minimum et maximum.
Si base est indiqué, une initialisation du générateur de nombres a lieu avec cette valeur. Le résultat est une
série de nombres. Il est possible de lire les nombres de cette série sans base en appelant à nouveau la
fonction de Script. La série de nombres générée est toujours la même pour une valeur initiale définie : les
mêmes nombres se trouvent dans le même ordre.
Si la fonction de Script est exécutée simultanément dans le Script d'un autre objet, elle remplace la
série de nombres déjà générée.
La fonction de Script permet uniquement de transférer des nombres entiers positifs (type de données :
unsigned) ! Le résultat représente également toujours un nombre entier positif !
Exemples
Dans le premier exemple, la fonction indique un nombre entre 1 et 10 (les deux nombres sont intégrés). Le
résultat est "3" par exemple.
:SET &nombre# = RANDOM(1, 10)
Dans le deuxième exemple, une série de nombres est générée en premier en utilisant le paramètre Base. Il
est possible d'accéder à la valeur en procédant à une nouvelle exécution via la fonction. Les 10 premières
valeurs de la série de nombres générée avec la base "1" sont : 6, 2, 9, 6, 5, 4, 9, 9, 8 et 2. Le résultat
enregistré dans "&nombre#" lors du premier appel est donc toujours "6".
:SET &ret# = RANDOM(&min#, &max#, 1)
:SET &nombre# = RANDOM(&min#, &max#)
Rubriques connexes :
Elément de script
Description
ADD
Exécute une addition.
SUB
Exécute une soustraction.
MULT
Exécute une multiplication.
MOD
Indique le quotient d'une division.
Automation Engine
DIV
381
Exécute une division.
Scripts – Calculs
Généralités sur les Scripts
Script - Liste alphabétique
Script - Division fonctionnelle
3.13.7 SUB
Fonction script : Exécute une soustraction.
Syntaxe
SUB(Opérande1, Opérande2)
Elément de syntaxe
Description/format
Opérande1
Première expression de calcul.
Format : littéral de Script, variable de Script ou nombre sans guillemets
Opérande2
Deuxième expression de calcul.
Format : littéral de script, nombre sans guillemets ou Variable de script
Code retour
Résultat de la soustraction
Remarques
La fonction de Script soustrait Opérande1 de Opérande2.
Opérande1 et Opérande2 doivent être des expressions qui correspondent aux nombres dans le domaine de
valeur des Types de données.
Si le résultat d'une Variable de Script est affecté, celle-ci doit présenter le type de données correspondant.
Lors d'une tentative d'enregistrement d'un nombre négatif comportant le type de données "unsigned" dans
une Variable, une erreur apparaît. S'il s'agit, lors du résultat, d'un nombre à virgule flottante et si la Variable
de destination possède le type de données "signed" ou "unsigned", les chiffres après la virgule sont
supprimés. Le type de données "flottant" prend en charge tant les nombres négatifs que les nombres
variables. De plus, le type de données "chaîne" est également possible tant que le résultat n'est pas
stocké comme un nombre mais comme une chaîne de caractères. Le type de données des Variables de
Script est défini dans la définition avec le Script :DEFINE.
Attention : lors d'opérations de calcul avec des nombres variables, le résultat peut être imprécis !
Le système compte toujours le type de données du résultat, et non celui des opérandes ! Si par exemple
Opérande2 est négatif, cela peut produire un nombre positif qui peut à son tour être enregistré dans une
Variable de destination avec le type de données "unsigned".
Le résultat est retourné dans le format par défaut à 16 caractères. Les nombres variables possèdent 16
caractères supplémentaires après la virgule et lorsque des nombres négatifs sont pris en charge, le signe
respectif (+ ou -) est placé en première position. Pour modifier le formatage, utilisez la fonction script
FORMAT.
382
Chapter 3 Organisation fonctionnelle
Exemple
Dans l'exemple, le résultat de l'opération arithmétique est transmis à une Variable de Script. Opérande1 et
Opérande2 sont indiqués dans une expression numérique.
:SET &RESULTAT# = SUB(1000,999)
L'exemple suivant montre une soustraction avec des nombres variables.
:DEFINE &RESULTAT#,float
:SET &RESULTAT# = SUB(10.31,-5.45)
:P&RESULTAT#
Le résultat s'affiche dans le protocole d'activation de la façon suivante .
U0020408 +0000000000000015.7600000000000000
Rubriques connexes :
Elément de script
Description
ADD
Exécute une addition.
MULT
Exécute une multiplication.
MOD
Indique le quotient d'une division.
DIV
Exécute une division.
RANDOM
Génère des nombres aléatoires.
Scripts – Calculs
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14 Chaînes
3.14.1 ALPHA2RUNNR
Fonction script : Convertit le nom d'un Job ou d'un fichier de rapport en RunID;
Syntaxe
ALPHA2RUNNR(chaîne de caractères)
Elément de syntaxe
Description/format
Chaîne de caractères
Chaîne de 7 lettres
Format : Littéral de script ou Variable de script
Code retour
Numéro courant (RunID)
Automation Engine
383
Remarques
La fonction de script convertit une chaîne de caractères composée de 7 lettres en RunID.
Si vous enregistrez des Jobs et des rapports de Job dans le système de fichiers, leur nom de fichier
intègre le numéro courant (RunID) du Job, sous la forme d'une chaîne de 7 lettres. Exemple de rapport de
Job sous Windows : OGMITAEV.TXT. "O" marque le rapport de Job, "GMITAEV" est la chaîne de
caractères du RunID utilisé 2000061045. Pour un traitement du nom de fichier dans un script, la chaîne de
caractères doit être reconvertie en RunID (10 chiffres) avec ALPHA2RUNNR.
La fonction de script RUNNR2ALPHA convertit le RunID à 10 chiffres en chaîne de 7 lettres.
Exemples
Dans l'exemple, la chaîne de 7 caractères est déterminée à partir du nom de fichier et affichée dans le
protocole d'activation.
:SET &ALPHA# = MID("JAADMXZT.TXT", 2, 7)
:SET &RET# =ALPHA2RUNNR(&ALPHA#)
:PRINT "RunID: &RET#"
Rubriques connexes :
Elément de script
Description
RUNNR2ALPHA
Conversion du RunID en noms de fichier associés.
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.2 CONVERT
Fonction script : Convertit le type de données d'une valeur.
Syntaxe
CONVERT (type de données, valeur)
Elément de syntaxe
Description/format
Type de données
Type de données dans lequel la conversion doit être effectuée.
Valeurs autorisées : "unsigned", "signed", "float" et "string"
unsigned : nombres entiers positifs sans signes
signed : nombres entiers avec signes
float : nombres à virgule flottante
string : chaîne de caractères, texte
L'indication des types de données s'effectue sans guillemet !
384
Chapter 3 Organisation fonctionnelle
Valeur
Valeur dont le type de données doit être converti en un autre type de données.
Format : Littéral de script ou Variable de script
Les chiffres doivent également être indiqués entre guillemets !
Code retour
Valeur avec le type de données converti.
Remarques
La fonction script permet de convertir le type de données d'une valeur qui est indiquée soit directement,
soit via une Variable de script en un autre type de données. Le code de retour est la valeur reconvertie
devant être attribuée à une Variable cible.
Attention : en utilisant cette fonction script, veillez à ce que le type de données de la valeur à convertir
corresponde au type de données de la Variable cible.
Les chaînes de caractères peuvent uniquement être converties en chiffres si la chaîne contient un nombre
dans un format valide !"
Si une tentative de convertir un type de données supérieur en un type inférieur est effectuée, les nombres
décimaux seront arrondis ou les signes supprimés.
Si le type de données de la Variable cible ne correspond pas au paramètre "Type de données" de la
fonction, la conversion est impossible et une erreur de script apparaît !
Attention : la fonction de script ne permet pas de convertir les nombres négatifs !
Exemple
Dans le premier exemple, un nombre entier positif est converti en une chaîne de caractères.
:define&unsigned#, unsigned
:define&string#, string
:set&unsigned# = 12
:set&string# = CONVERT(string, &unsigned#)
Dans le deuxième exemple, une chaîne de caractères est convertie en un nombre. Ceci est uniquement
possible si la chaîne de caractères est composée d'un nombre qui présente un format valide pour le type
de données cible.
:define&unsigned#, unsigned
:define&string#, string
:set&string# = "1234"
:set&unsigned# = CONVERT(unsigned,&string#)
Rubriques connexes :
Elément de script - Traitement d'objets
Importation et exportation d'objets
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
Automation Engine
385
3.14.3 FORMAT
Fonction de script : modification du formatage d'un nombre
Syntaxe
FORMAT(nombre [,format])
Elément de syntaxe
Description/format
Nombre
Nombre devant être formaté.
Format : Littéral de script ou Variable de script
Format
Zéros servant de caractères de remplacement pour les chiffres des nombres.
Pour les nombres à virgule flottante, il est également possible d'indiquer un
séparateur comme point décimal et le nombre de chiffres après la virgule.
Format : littéral de script ou Variable de script
Valeur par défaut : 0
Code retour
Nombre formaté (type de données : chaîne)
Remarques
La fonction de Script permet d'ajouter ou de supprimer des zéros en tête d'un nombre entier. Pour les
nombres à virgule flottante, il est possible de déterminer le nombre de chiffres après la virgule.
L'utilisation du paramètre Format permet de déterminer le nombre de zéros en tête des nombres entiers. Le
nombre de zéros que vous indiquez dans ce paramètre sert de caractère de remplacement pour l'ensemble
du nombre de chiffres. Si le nombre de zéros est inférieur au nombre du chiffre, celui-ci n'est pas modifié.
Si vous ne spécifiez pas ce paramètre, la fonction supprimera ses zéros en tête.
Pour les nombres à virgule flottante, il est également possible d'indiquer le nombre de décimales.
Saisissez à cet effet un point décimal comme séparateur dans le paramètre Format. Le nombre de chiffres
après la virgule est défini par les zéros après le séparateur.
Les chiffres après la virgule qui dépassent ce chiffre sont supprimés. Pas d'arrondi ! Si le point décimal
n'est pas indiqué, tous les chiffres après la virgule seront supprimés ! Si le nombre possède moins de
décimales qu'indiqué dans Format, le reste sera rempli de zéros.
Si en plus dans Format, le premier signe indiqué est un '+' (par exemple : "+0.00"), le signe sera également
affiché avec les chiffres positifs.
La Variable de destination à laquelle le code retour de la fonction est attribué doit comporter le type de
données "chaîne" !
Si, après suppression de tous les chiffres après la virgule, le résultat est 0, le signe n'a alors plus
aucune importance et il sera supprimé.
Exemples
Le premier exemple supprime les zéros en tête du code retour à 16 chiffres d'une fonction de Script. Le
résultat s'affiche dans le protocole d'activation.
386
Chapter 3 Organisation fonctionnelle
:SET &SRV#=SYS_BUSY_60
:SET &RET#=FORMAT(&SRV#)
:PRINT &RET#
Dans le deuxième exemple, le nombre à 5 chiffres indiqué est formaté. Le résultat (00125) s'affiche dans le
protocole d'activation.
:SET &RET#=FORMAT("125","00000")
:PRINT &RET#
Dans le troisième exemple également, les zéros en tête sont supprimés, car le nombre de chiffres indiqué
est trop petit. Le résultat (333) s'affiche dans le protocole d'activation.
:SET &RET#=FORMAT("0000333","00")
:PRINT &RET#
Dans le quatrième exemple, le nombre n'est pas modifié.
:SET &RET#=FORMAT("555","00")
:PRINT &RET#
Le cinquième exemple montre le formatage d'un nombre à virgule flottante sur un chiffre après la virgule. "0.7" s'affiche dans le protocole d'activation.
:DEFINE&NUM#,float
:DEFINE&RET#,string
:SET&NUM#=-0.75
:SET &RET#=FORMAT(&NUM#,"00.0")
:PRINT &RET#
Dans le sixième exemple, les décimales sont supprimées. L'affichage dans le rapport d'activation est
"0000".
:DEFINE&NUM#,float
:DEFINE&RET#,string
:SET&NUM#=0.65
:SET &RET#=FORMAT(&NUM#,"0000")
:PRINT &RET#
Rubriques connexes :
Elément de script
Description
STR_LTRIM
Supprime les espaces qui figurent au début d'une chaîne de caractères.
STR_RTRIM
Supprime les espaces qui figurent à la fin d'une chaîne de caractères.
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.4 HEX
Fonction script : Conversion d'une chaîne de caractères au format hexadécimal
Syntaxe
HEX (chaîne de caractères)
Elément de syntaxe
Description/format
Automation Engine
Chaîne de caractères
387
Chaîne de caractères alphanumérique devant être convertie.
Format : Littéral de script ou Variable de script
Code retour
Chaîne comportant 252 caractères maximum au format hexadécimal.
Remarques
La fonction de Script vous permet de définir chaque caractère d'une chaîne de caractères en fonction du
jeu de caractères hexadécimal.
Une chaîne de caractères devant se composer de 126 caractères maximum est transmise à la fonction de
Script. Une Chaîne de caractères plus longue sera tronquée après le 126ème, sans message.
Exemple
Dans l'exemple, le format hexadécimal est appliqué à la chaîne de caractères. Le résultat "554334"
s'affiche dans le protocole d'activation.
: SET &RET# = HEX ( "UC4" )
: PRINT &RET#
Rubriques connexes :
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.5 ISNUMERIC
Fonction du Script : vérifie si une chaîne de caractères est numérique.
Syntaxe
ISNUMERIC (chaîne de caractères)
Elément de syntaxe
Description/format
Chaîne de caractères
Chaîne de caractères devant être vérifiée.
Format : Littéral de script ou Variable de script
Codes retour
"Y" - La chaîne de caractères est numérique
"N" - La chaîne de caractères n'est pas numérique
388
Chapter 3 Organisation fonctionnelle
Remarques
La fonction de Script vous permet de vérifier si tous les caractères d'une chaîne de caractères sont
numériques.
Exemples
Les deux exemples indiquent le résultat "Y".
: SET &RET# = ISNUMERIC ( "123" )
: PRINT &RET#
: SET &RET# = ISNUMERIC ( "00123" )
: PRINT &RET#
Dans le cas suivant, la chaîne n'est pas numérique. La fonction renvoie donc la valeur "N".
: SET &RET# = ISNUMERIC ( "1abc" )
: PRINT &RET#
Rubriques connexes :
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.6 RUNNR2ALPHA
Fonction script : Conversion du RunID en noms de fichier associés.
Syntaxe
RUNNR2ALPHA(RunID)
Elément de syntaxe
Description/format
RunID
Numéro courant à 10 caractères (RunID)
Format : littéral de script, chiffre ou Variable de script
Code retour
Nom du fichier de Job ou de rapport.
Remarques
La fonction de script convertir un RunID à 10 caractères en chaîne de caractères composée de 7 lettres.
Pour déterminer le nom à attribuer aux fichiers de Jobs et de rapports de Job enregistrés dans le système
de fichiers, le RunID à 10 caractères est converti en chaîne de 7 lettres. Exemple de rapport de Job sous
Windows : OGMITAEVN.TXT. "O" désigne le rapport de Job, "GMITAEVN" est la chaîne de caractères
Automation Engine
389
du RunID converti 2000061045. Pour un traitement du nom de fichier dans un script, la chaîne de
caractères formée (lettres) peut être déterminée à partir du RunID à 10 caractères.
Pour chaque Job, la fonction de script GET_ATT avec les attributs FILENAME_JOB ou FILENAME_
SYSOUT fournit les noms de fichier du Job et du rapport de Job.
La fonction de script ALPHA2RUNNR convertit la chaîne de 7 lettres en RunID de 10 chiffres.
Exemples
Dans l'exemple, le Job "GS.JOUR" est activé. Le RunID renvoyé est converti en chaîne de 7 caractères
et affiché dans le protocole d'activation.
:SET &RUNNR# = ACTIVATE_UC_OBJECT("GS.JOUR")
:SET &RET#
=RUNNR2ALPHA(&RUNNR#)
:PRINT "ALPHA: &RET#"
Rubriques connexes :
Elément de script
Description
ALPHA2RUNNR
Convertit le nom d'un Job ou d'un fichier de rapport en RunID;
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.7 STR_CAT
Fonction script : Lie deux chaînes de caractères à une troisième.
Syntaxe
STR_CAT (Chaîne de caractères1, Chaîne de caractères2)
Elément de syntaxe
Description/format
Chaîne de caractères1,
chaîne de caractères2
Chaîne de caractères alphanumérique
Format : Littéral de script ou Variable de script
Code retour
Chaîne de caractères composée des deux chaînes de caractères indiquées
Exemple
L'exemple utilise la fonction pour créer un titre (par ex. "Evaluation quotidienne 12.01.2005") et l'intégrer
dans une Variable de Script.
: SET &PROCESSUS# = "Evaluation quotidienne"
: SET &DATE# = SYS_DATE ( "JJ.MM.AAAA" )
: SET &TITRE# = STR_CAT ( &PROCESSUS# , &DATE# )
390
Chapter 3 Organisation fonctionnelle
Rubriques connexes :
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.8 STR_CUT, MID, SUBSTR
Fonctions de Script : Copie des caractères d'une chaîne de caractères.
Syntaxe
STR_CUT(Chaîne de caractères, début[, longueur])
MID(Chaîne de caractères, début[, longueur])
SUBSTR(Chaîne de caractères, début[, longueur])
Elément de syntaxe
Description/format
Chaîne de caractères
Chaîne de caractères alphanumérique
Format : Littéral de script ou Variable de script
Début
Position à partir de laquelle les caractères sont copiés
Format : nombre sans guillemets ou Variable de Script
Longueur
Nombre de caractères devant être copiés
Format : nombre sans guillemets ou Variable de Script
Code retour
Partie d'une chaîne de caractères
Remarques
Les fonctions de Script fonctionnent pareil. Elles copient les caractères d'une chaîne de caractères
donnée. La longueur est un paramètre facultatif. Si elle n'est pas indiquée, tous les caractères sont
indiqués jusqu'à la fin de la chaîne de caractères.
La chaîne de caractères dans laquelle des éléments sont copiés reste bien sûr inchangée.
Exemples
Dans le premier exemple, la fonction rend "CD" comme valeur. Le résultat du deuxième exemple est
"CDEFGH", la chaîne de caractères copiée jusqu'à la fin.
:SET &STRING# = MID("ABCDEFGH",3,2)
:SET &STRING# = STR_CUT("ABCDEFGH",3)
Dans l'exemple suivant, la fonction sert à répartir un terme indiqué par l'Utilisateur. Les trois premiers
caractères sont donc attribués à la première Variable de Script et le dernier caractère à la deuxième
Variable de Script.
Automation Engine
391
:READ &NOMTAB#, "04", "Veuillez indiquer le nom de table xxxy"
:SET &PRETAB# = SUBSTR(&NOMTAB#,1,3)
:SET &SUFTAB# = SUBSTR(&NOMTAB#,4,1)
Rubriques connexes :
Elément de script
Description
STR_
SUBSTITUTE
Remplace des caractères ou une chaîne de caractères dans une chaîne de
caractères.
STR_CAT
Lie deux chaînes de caractères à une troisième.
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.9 STR_FIND
Fonction script : Recherche un caractère ou une chaîne de caractères dans une chaîne de caractères.
Syntaxe
STR_FIND(chaîne de caractères1, chaîne de caractères2[, Start])
Elément de syntaxe
Description/format
Chaîne de caractères1
Chaîne de caractères alphanumérique dans laquelle la recherche doit avoir
lieu.
Format : Littéral de script ou Variable de script
Chaîne de caractères2
Caractère unique ou chaîne de caractères alphanumérique recherché(e).
Format : Littéral de script ou Variable de script
Début
Position à laquelle la recherche doit commencer.
Format : nombre sans guillemets
Valeur par défaut : 1
Codes retour
Position à laquelle le caractère ou la chaîne de caractères a été trouvé(e).
"0" - Le caractère ou la chaîne de caractères n'a pas été trouvé(e).
Remarques
La fonction recherche la chaîne de caractères2 dans la chaîne de caractères1 et commence donc la
recherche à partir de Start. Si la position Start n'est pas indiquée, la recherche débute en position 1. La
chaîne de caractères2 peut se composer d'un seul caractère. La recherche n'est pas sensible à la casse.
Les majuscules et minuscules ne sont donc pas prises en compte.
La fonction de Script indique de nouveau la première position à laquelle la chaîne de caractères2 a été
trouvée comme valeur. La position est donc toujours comptée depuis le début de la chaîne de caractères1,
pas à partir de Start.
392
Chapter 3 Organisation fonctionnelle
Exemple
Dans l'exemple, la recherche retourne à nouveau la valeur 4 après "#" dans la chaîne de caractères
"UC4#01, UC4#02". Elle est affichée dans le protocole d'activation.
:SET &CHAINE#="UC4#01, UC4#02"
:SET &CHAINE_RECHERCHE#="#"
:SET &POS#=STR_FIND(&CHAINE#,&CHAINE_RECHERCHE#)
:PRINT &POS#
Dans l'exemple suivant, la recherche débute en position 2. La position à laquelle la chaîne de caractères a
été trouvée est la position 9.
:SET &POS#=STR_FIND("UC4#01, UC4#02","UC4", 2)
:PRINT &POS#
Rubriques connexes :
Elément de script
Description
STR_FIND_REVERSE
Recherche un caractère ou une chaîne de caractères dans une chaîne de
caractères. La recherche commence à la fin de la chaîne de caractères à
rechercher.
Scripts - Chaînes
Exemples
Alerte avec texte du message variable
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.10 STR_FIND_REVERSE
Fonction script : Recherche un caractère ou une chaîne de caractères dans une chaîne de caractères.
La recherche commence à la fin de la chaîne de caractères à rechercher.
Syntaxe
STR_FIND_REV[ERSE] (Chaîne de caractères1, Chaîne de caractères2)
Elément de syntaxe
Description/format
Chaîne de caractères1
Chaîne de caractères alphanumérique dans laquelle la recherche doit avoir
lieu.
Format : Littéral de script ou Variable de script
Chaîne de caractères2
Caractère unique ou chaîne de caractères alphanumérique recherché(e).
Format : Littéral de script ou Variable de script
Codes retour
Position à laquelle le caractère ou la chaîne de caractères a été trouvé(e).
"0" - Le caractère ou la chaîne de caractères n'a pas été trouvé(e).
Automation Engine
393
Remarques
La fonction de Script recherche si chaîne de caractères2 est identique à chaîne de caractères1.
Contrairement à la fonction de Script STR_FIND , la recherche dans la chaîne de caractères1 commence
par la fin.
La chaîne de caractères2 ne doit également comprendre qu'un seul caractère. La recherche n'est pas
sensible à la casse. Les majuscules et minuscules ne sont donc pas prises en compte.
La fonction de Script indique de nouveau la première position à laquelle la chaîne de caractères2 a été
trouvée comme valeur. La position est donc comptée depuis le début de la chaîne de caractères1.
Exemple
Dans l'exemple, la recherche retourne à nouveau la valeur 12 après "#" dans la chaîne de caractères
"UC4#01, UC4#02". Elle est affichée dans le protocole d'activation.
:SET &CHAINE#="UC4#01, UC4#02"
:SET &CHAINE_RECHERCHE#="#"
:SET &POS#=STR_FIND_REVERSE(&CHAINE#,&CHAINE_RECHERCHE#)
:PRINT &POS#
Dans l'exemple suivant, on effectue une recherche de chaîne de caractères. La position à laquelle celle-ci
a été trouvée est la position 9.
:SET &POS#=STR_FIND_REV("UC4#01, UC4#02","UC4")
:PRINT &POS#
Rubriques connexes :
Elément de
script
Description
STR_FIND
Recherche un caractère ou une chaîne de caractères dans une chaîne de
caractères.
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.11 STR_LC, CONV_LC
Fonctions de Script : Transforment toutes les majuscules d'une chaîne de caractères en minuscules.
Syntaxe
STR_LC(Chaîne de caractères)
CONV_LC(Chaîne de caractères)
Elément de syntaxe
Description/format
Chaîne de caractères
Chaîne de caractères alphanumérique
Format : Littéral de script ou Variable de script
394
Chapter 3 Organisation fonctionnelle
Code retour
Chaîne de caractères dans laquelle toutes les lettres sont en minuscules.
Remarques
Les deux fonctions de Script fonctionnent pareil.
Exemples
Les deux exemples transforment une chaîne de caractères en minuscules. La chaîne de caractères est
transmise à la fonction sous forme de littéral de chaîne dans le premier exemple et dans le deuxième, sous
forme de Variable de Script. Les résultats de la fonction sont "abcdefgh 123&%$§" et "ucaagx.htm".
:SET &CHAINE# = CONV_LC("ABCDEFGH 123&%$§")
:SET &NOM# = "UCAAGX.HTM"
:SET &CHAINE# = STR_LC(&NOM#)
Rubriques connexes :
Elément de script
Description
CONV_UC ou STR_
UC
Transforment toutes les minuscules d'une chaîne de caractères en
majuscules.
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.12 STR_LENGTH, STR_LNG
Fonctions de Script : Détermination de la longueur d'une chaîne de caractères.
Syntaxe
STR_LENGTH (Chaîne de caractères)
STR_LNG (Chaîne de caractères)
Elément de syntaxe
Description/format
Chaîne de caractères
Chaîne de caractères alphanumérique
Format : Littéral de script ou Variable de script
Code retour
Nombre de caractères dans une chaîne
Automation Engine
395
Remarques
Les deux fonctions de Script fonctionnent pareil.
Exemples
Le premier exemple indique qu'il y a 14 caractères.
: SET
&nombre#
= STR_LENGTH ( " Logiciel UC4 " )
Le deuxième exemple détermine la longueur d'une chaîne de caractères transmise dans une Variable de
Script.
: SET
&nombre#
= STR_LENGTH ( &chaîne de caractères )
Rubriques connexes :
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.13 STR_LTRIM
Fonction du Script : supprime les espaces qui figurent au début d'une chaîne de caractères.
Syntaxe
STR_LTRIM(chaîne de caractères)
Elément de syntaxe
Description/format
Chaîne de caractères
Chaîne de caractères alphanumérique devant être modifiée.
Format : Littéral de script ou Variable de script
Code retour
Chaîne de caractère sans espace en tête
Exemple
L'exemple affiche le résultat ("La base de données est ouverte... ") dans le protocole d'activation.
:SET &RET# = STR_LTRIM("
:PRINT &RET#
La base de données s'ouvre...
")
Rubriques connexes :
Elément de script
Description
STR_RTRIM
Supprime les espaces qui figurent à la fin d'une chaîne de caractères.
396
Chapter 3 Organisation fonctionnelle
STR_TRIM
Supprime les espaces qui figurent au début et à la fin d'une chaîne de caractères.
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.14 STR_MATCH
Fonction script : Comparaison de deux chaînes de caractères
Syntaxe
STR_MATCH(chaîne de caractères1, chaîne de caractères2[, caractère générique1[,
caractère générique2]])
Elément de syntaxe
Description/format
Chaîne de caractères1
Chaînes de caractères alphanumérique devant être comparées.
Format : Littéral de script ou Variable de script
Chaîne de caractères2
Chaînes de caractères alphanumérique devant être comparées.
Format : Littéral de script ou Variable de script
Caractère générique 1
Caractère générique pour un nombre de caractère
Format : littéral de script ou Variable de script
Valeur par défaut : "*"
Caractère générique 2
Caractères génériques pour un caractère précis.
Format : littéral de script ou Variable de script
Valeur par défaut : "_"
Codes retour
"Y" - Les chaînes sont identiques.
"N" - Les chaînes sont différentes.
Remarques
La fonction de Script compare si chaîne de caractères2 est identique à chaîne de caractères1. Les
majuscules et les minuscules sont à cet effet différenciées (sensible à la casse).
Des caractères génériques peuvent être utilisés dans la chaîne de caractères2 pour créer une trame de
comparaison. Par défaut, "*" signifie n'importe quelle chaîne de caractères et "_" exactement un caractère.
D'autres caractères génériques peuvent être utilisés et attribués à la chaîne de caractères1 et/ou à la
chaîne de caractères2.
Exemples
Le premier exemple affiche le résultat "N" dans le protocole d'activation.
Automation Engine
397
:SET &RET# = STR_MATCH("Interface Utilisateur", "Interface Utilisateur")
:PRINT &RET#
Le deuxième exemple utilise des caractères génériques pour la comparaison. Le résultat "Y" est affiché
dans le protocole d'activation.
:SET &RET# = STR_MATCH("Interface Utilisateur","U*I*")
:PRINT &RET#
Le troisième exemple utilise un caractère générique défini de manière explicite. Le résultat "Y" est affiché
dans le protocole d'activation.
:SET &RET# = STR_MATCH("Interface Utilisateur", "Utilisateur#", "#")
:PRINT &RET#
Dans le quatrième exemple, un caractère générique est également utilisé. Il désigne toutefois un caractère
précis. Par conséquent, le résultat est "N".
:SET &RET# = STR_MATCH("Interface Utilisateur", "Utilisateur#",, "#")
:PRINT &RET#
Rubriques connexes :
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.15 STR_REVERSE
Fonction script : Inverse l'ordre des caractères d'une chaîne.
Syntaxe
STR_REVERSE (chaîne de caractères)
Elément de syntaxe
Description/format
Chaîne de caractères
Chaîne de caractères alphanumérique devant être traitée.
Format : Littéral de script ou Variable de script
Code retour
Chaîne de caractères dont les caractères sont en ordre inversé
Exemple
Le premier exemple affiche le résultat "4CU" dans le protocole d'activation.
: SET &RET# = STR_REVERSE ( "UC4" )
: PRINT &RET#
Rubriques connexes :
Scripts - Chaînes
398
Chapter 3 Organisation fonctionnelle
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.16 STR_RTRIM
Fonction du Script : supprime les espaces qui figurent à la fin d'une chaîne de caractères.
Syntaxe
STR_RTRIM(chaîne de caractères)
Elément de syntaxe
Description/format
Chaîne de caractères
Chaîne de caractères alphanumérique devant être modifiée.
Format : Littéral de script ou Variable de script
Code retour
Chaîne de caractère sans espace à la fin
Exemple
L'exemple affiche le résultat ("La base de données est ouverte... ") dans le protocole d'activation.
:SET &RET# = STR_RTRIM("
:PRINT &RET#
La base de données s'ouvre...
")
Rubriques connexes :
Elément de script
Description
STR_LTRIM
Supprime les espaces qui figurent au début d'une chaîne de caractères.
STR_TRIM
Supprime les espaces qui figurent au début et à la fin d'une chaîne de caractères.
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.17 STR_SUBSTITUTE
Fonction script : Remplace des caractères ou une chaîne de caractères dans une chaîne de caractères.
Syntaxe
STR_SUB[STITUTE] (Chaîne de caractères, [Ancienne] [,Nouvelle])
Elément de syntaxe
Description/format
Automation Engine
399
Chaîne de caractères
Chaîne de caractères alphanumérique dans laquelle des remplacements
doivent être réalisés.
Format: Littéral de script ou Variable de script
Ancienne
Chaîne de caractères alphanumérique devant être remplacée dans la chaîne
de caractères.
Format: littéral de script ou Variable de script
Valeur par défaut : " " Nouveau
Chaîne de caractères alphanumérique devant remplacer Ancienne.
Format: littéral de script ou Variable de script
Valeur par défaut : " "
Code retour
Chaîne de caractères devant être créée par le remplacement.
Remarques
La fonction de script remplace un caractère ou une chaîne de caractères dans une chaîne de caractères.
Ancien et Nouveau ne peuvent pas contenir plus de 1024 caractères et sont utilisés en option. Si Ancien
n'a pas été indiqué comme paramètre, chaque espace est remplacé par Nouveau via le caractère ou la
chaîne de caractères. Si Nouveau n'est pas utilisé comme paramètre, Ancien est remplacé par un espace.
Si Ancien n'apparaît pas dans Base, la fonction renvoie la chaîne de caractères indiquée dans Base.
La fonction de script peut également servir à effacer Ancien de la chaîne de caractères. Pour cela, deux
guillemets successifs (sans espace) doivent être indiqués comme Nouveau.
Exemple
Dans le premier exemple, le caractère "A" est remplacé par le caractère "B". Le résultat "BBBBB" est
affiché dans le protocole d'activation.
:SET &RET# = STR_SUBSTITUTE ("AAAAA", "A", "B")
:PRINT &RET#
Le deuxième exemple remplace la chaîne de caractères "AAAAA" par le caractère "B". Le résultat "B" est
affiché dans le protocole d'activation.
:SET &RET# = STR_SUBSTITUTE ("AAAAA", "AAAAA", "B")
:PRINT &RET#
Dans le troisième exemple, la chaîne de caractères "AA" est remplacée par la chaîne de caractères "BB".
Le résultat "BBBBA" est affiché dans le protocole d'activation.
:SET &STR1# = "AA"
:SET &STR2# = "BB"
:SET &RET# = STR_SUB ("AAAAA", &STR1#, &STR2#)
:PRINT &RET#
Le quatrième exemple efface les espaces de la chaîne de caractères. Le résultat "UC4" est affiché dans le
protocole d'activation.
:SET &RET# = STR_SUB ("U C 4", " ", "")
:PRINT&RET#
400
Chapter 3 Organisation fonctionnelle
Rubriques connexes :
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.18 STR_SUBSTITUTE_VAR, STR_SUB_VAR
Fonction script : Remplace le nom de Variables de scripts par leur valeur.
Syntaxe
STR_SUB[STITUTE]_VAR(Variables)
Elément de syntaxe
Description/format
Variables
Variable de script ou chaîne de caractères contenant un ou plusieurs noms de
Variable
Format : littéral de script ou Variable de script
Code retour
Chaîne de caractères avec les valeurs des Variables de script
Remarques
L'élément STR_SUB_VAR permet de remplacer un ou plusieurs noms de Variables de script par la valeur
de Variable réelle qui à leur tour sont enregistrés comme chaîne de caractères dans une autre Variable de
script. Les exemples suivants permettent d'expliquer ce comportement.
Dans l'élément GET_PROCESS_LINE, il existe un paramètre qui est également désigné STR_SUB
[STITUTE]_VAR et qui exécute le même remplacement pour la ligne d'une séquence de données.
Exemple
Dans l'exemple suivant, le nom d'une Variable de script (&VAR#) est enregistré dans une autre Variable
(&VAR_NOSUB#) en indiquant deux fois le caractère &.
Si &VAR_NOSUB# s'affiche, le nom de la Variable de script &VAR# est écrit dans le protocole
d'activation. Pour le remplacer également par la valeur de la Variable, l'élément STR_SUB_VAR doit être
utilisé.
:SET&VAR# = "Variable de script"
:SET&VAR_NOSUB# = "&&VAR# = &VAR#"
:PRINT&VAR_NOSUB#
:SET &VAR_SUB# = STR_SUB_VAR(&VAR_NOSUB#)
:PRINT&VAR_SUB#
Affichage dans le protocole d'activation :
2011-05-06 10:34:04 - U0020408 &VAR# = Variable de script
2011-05-06 10:34:04 - U0020408 Variable de script = Variable de script
Automation Engine
401
Dans le deuxième exemple, une valeur est déterminée à partir de l'objet Variable VARA.SUB qui à son
tour contient le nom de 2 Variables de script. Ces 2 Variables de script sont ensuite créées et exécutées.
Si la valeur de l'objet Variable s'affiche directement, seuls les noms des Variables de script sont écrits
dans le rapport. Aucun remplacement direct des valeurs n'est effectué.
Pour remplacer les noms des 2 Variables de script par leur valeur, l'élément STR_SUB_VAR est
nécessaire.
:SET&VARA# = GET_VAR(VARA.SUB, "SUBVAR")
:SET&VAR1# = "Hello"
:SET&VAR2# = "World"
:PRINT"Contenu sans remplacement : &VARA#"
:SET&VARA_SUB_VAR# = STR_SUB_VAR(&VARA#)
:PRINT"Contenu avec remplacements : &VARA_SUB_VAR#"
Sortie d'abord sans, puis avec STR_SUB_VAR :
2011-05-06 10:34:04 - U0020408 Contenu sans remplacement : &VAR1# &VAR2#
2011-05-06 10:34:04 - U0020408 Contenu avec remplacements : Hello World
Rubriques connexes :
Elément de script
Description
GET_PROCESS_LINE
Détermine le contenu actuel des lignes d'une séquence de données.
Elément de script - Activation d'objets
Exemples
Alerte avec texte du message variable
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.19 STR_TRIM
Fonction du Script : supprime les espaces qui figurent au début et à la fin d'une chaîne de caractères.
Syntaxe
STR_TRIM(chaîne de caractères)
Elément de syntaxe
Description/format
Chaîne de caractères
Chaîne de caractères alphanumérique devant être modifiée.
Format : Littéral de script ou Variable de script
Code retour
Chaîne de caractères sans espace en tête et à la fin
Exemple
L'exemple affiche le résultat ("La base de données est ouverte... ") dans le protocole d'activation.
402
Chapter 3 Organisation fonctionnelle
:SET &RET# = STR_TRIM("
:PRINT &RET#
La base de données est ouverte... ")
Rubriques connexes :
Elément de script
Description
STR_LTRIM
Supprime les espaces qui figurent au début d'une chaîne de caractères.
STR_RTRIM
Supprime les espaces qui figurent à la fin d'une chaîne de caractères.
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.20 STR_UC, CONV_UC
Fonctions de Script : Transforment toutes les minuscules d'une chaîne de caractères en majuscules.
Syntaxe
STR_UC(Chaîne de caractères)
CONV_UC(Chaîne de caractères)
Elément de syntaxe
Description/format
Chaîne de caractères
Chaîne de caractères alphanumérique
Format : Littéral de script ou Variable de script
Code retour
Chaîne de caractères dans laquelle toutes les lettres sont en majuscules.
Remarques
Les deux fonctions de Script fonctionnent pareil.
Exemples
Les deux exemples transforment une chaîne de caractères en majuscules. La chaîne de caractères est
transmise à la fonction sous forme de littéral de chaîne dans le premier exemple et dans le deuxième, sous
forme de Variable de Script. Les résultats de la fonction sont "ABCDEFGH 123&%$§" et "VEUILLEZ
LANCER LA SAUVEGARDE !".
:SET &CHAINE# = CONV_LC("abcdefgh 123&%$§')
:SET &MSG# = "Veuillez lancer la sauvegarde !"
:SET &CHAINE# = STR_UC(&MSG#)
Rubriques connexes :
Automation Engine
Elément de script
Description
CONV_LC ou STR_
LC
Transforment toutes les majuscules d'une chaîne de caractères en
minuscules.
403
Scripts - Chaînes
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
3.14.21 UC_CRLF
Fonction script : Indique un retour à la ligne.
Syntaxe
UC_CRLF()
Exemples
Dans le premier exemple, le message d'Alerte s'affiche sur deux lignes.
:PUT_ATT CALL_TEXT = "Le Workflow GS.JOUR est bloqué."
:PUT_ATT_APPEND CALL_TEXT = UC_CRLF()
:PUT_ATT_APPEND CALL_TEXT = "Escalade dans 10 minutes."
Dans le deuxième exemple, le même message s'affiche. Le retour à la ligne est toutefois réalisé par une
Variable de script.
:SET &NL#=UC_CRLF()
:PUT_ATT CALL_TEXT = "Le Workflow GS.JOUR est bloqué.&NL#Escalade dans
10 minutes."
Bien sûr, la fonction de script peut également être utilisée pour les textes que vous envoyez par e-mail,
comme le montre le troisième exemple.
:SET &NL#= UC_CRLF()
:SET &TEXT# = "Le Workflow GS.JOUR est bloqué.&NL#Escalade dans
10 minutes."
:SET &RET# = SEND_MAIL("[email protected]",,"La Tâche ne peut pas
démarrer",&TEXTE#)
Rubriques connexes :
Elément de script - Traitement des erreurs et messages
Exemples
Détermination du message d'erreur et du numéro de l'erreur
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
404
Chapter 4 JCL UC4 pour les applications
4 JCL UC4 pour les applications
4.1 Généralités sur le JCL UC4 pour les
applications
UC4 fournit non seulement des objets Job pour les systèmes d'exploitation, mais aussi pour les
solutions logicielles standard comme SAP, PeopleSoft, Oracle Applications et Siebel. Etant donné que
ces dernières ne fonctionnent pas avec un JCL (Job Control Language), mais avec des interfaces, le
script UC4 comporte toute une série de fonctions spéciales qui permettent d'exécuter des instructions
de traitement.
Ces fonctions sont créées à l'aide d'une interface graphique (Générateur) qui est par ailleurs en connexion
avec le système standard considéré.
Vous pouvez également définir les instructions de manière classique dans les onglets Script de l'objet Job
(éditeur de script).
Rubriques connexes :
Généralités sur les scriptsOnglet Forme (SAP)
Onglet Forme (PeopleSoft)
4.2 Oracle Applications
4.2.1 Généralités sur le JCL Oracle Applications
Le résumé suivant présente le Script JCL pour Oracle Applications et les interfaces correspondantes.
Elément de script
Elément de script
Description
OA_ADD_LAYOUT
Ajout d'une mise en page dans une requête.
OA_ADD_
NOTIFICATION
Ajout d'une notification dans une requête.
OA_ADD_PRINTER
Ajout d'une imprimante supplémentaire dans une requête.
OA_SET_PRINT_
DEFAULTS
Définition de valeurs par défaut pour les paramètres d'impression utilisés lors
de l'exécution de programmes simultanés.
OA_SUBMIT_
REQUEST
Envoi d'une requête d'exécution d'un programme simultané dans Oracle
Applications.
Rubriques connexes :
Généralités sur le JCL UC4 pour les applications
Automation Engine
405
4.2.2 OA_ADD_LAYOUT
Ajout d'une mise en page dans une requête.
Syntaxe
OA_ADD_LAYOUT
[APPLICATION=...]
[,NAME=...]
[,LANGUAGE=...]
[,TERRITORY=...]
[,OUTPUTFORMAT=...]
Elément de syntaxe
Description/format
APPLICATION=
Nom court de l'application de modèles
Format : Littéral de script
NAME=
Désignation du modèle
Format : Littéral de script
LANGUAGE=
Langue du fichier de modèle
Format : Littéral de script
TERRITORY=
Territoire du fichier de modèle
Format : Littéral de script
OUTPUTFORMAT=
Format de sortie
Format : Littéral de script
Remarques
Dans le Script, vous devez appeler l'instruction OA_ADD_LAYOUT pour chaque mise en page. Dès que
OA_SUBMIT_REQUEST est exécuté, l'Agent transmet les données à Oracle. Si d'autres soumissions
ont lieu dans le Script, vous devez tout d'abord redéfinir les mises en page à l'aide d'instructions OA_
ADD_LAYOUT.
Si une erreur se produit lors de la transmission des informations sur la mise en page, elle est journalisée
dans le rapport d'activation et le Job se termine avec le code retour 10.
Attention : l'utilisation de l'instruction OA_ADD_LAYOUT nécessite au moins Oracle Applications
version 11.5.10.2 !
Exemple
OA_ADD_LAYOUT APPLICATION='FND',NAME='XXPOST_XXPPOPS_
PP2',LANGUAGE='en',TERRITORY='US',OUTPUTFORMAT='PDF'
Rubriques connexes :
Généralités sur le JCL Oracle Applications
406
Chapter 4 JCL UC4 pour les applications
4.2.3 OA_ADD_NOTIFICATION
Ajout d'une notification dans une requête.
Syntaxe
OA_ADD_NOTIFICATION
USER=...
Elément de syntaxe
Description/format
USER=
Nom de l'Utilisateur
Format : Littéral de script
Remarques
Dans le Script, vous devez appeler l'instruction OA_ADD_NOTIFICATION pour chaque Alerte. Dès que
OA_SUBMIT_REQUEST est exécuté, l'Agent transmet les données à Oracle. Si d'autres soumissions
ont lieu dans le Script, vous devez tout d'abord redéfinir les Alertes à l'aide d'instructions OA_ADD_
NOTIFICATION.
Si une erreur se produit lors de la transmission d'une Alerte, elle est journalisée dans le rapport
d'activation et le Job se termine avec le code retour 10.
Exemple
OA_ADD_NOTIFICATION USER='MAX MEIER'
Rubriques connexes :
Généralités sur le JCL Oracle Applications
4.2.4 OA_ADD_PRINTER
Ajout d'une imprimante supplémentaire dans une requête.
Syntaxe
OA_ADD_PRINTER
PRINTER=...
[,COPIES=...]
Elément de syntaxe
Description/format
PRINTER=
Nom de l'imprimante
Format : Littéral de script
Automation Engine
COPIES=
407
Nombre de copies
Format : Nombre
Valeur par défaut : "0"
Remarques
L'instruction OA_SET_PRINT_DEFAULTS permet de définir une seule imprimante. Par conséquent,
utilisez OA_ADD_PRINTER pour en indiquer plusieurs.
Dans le Script, vous devez appeler l'instruction pour chaque imprimante. Dès qu'OA_SUBMIT_
REQUEST est exécuté, l'Agent transmet à Oracle les données sur l'imprimante. Si d'autres soumissions
ont lieu dans le Script, vous devez tout d'abord redéfinir les imprimantes à l'aide d'instructions OA_ADD_
PRINTER.
En revanche, si vous indiquez une imprimante à l'aide de l'instruction OA_SET_PRINT_DEFAULTS,
elle est utilisée pour tous les appels OA_SUBMIT_REQUEST suivants, et ce jusqu'à la fin du Job ou
jusqu'à l'instruction OA_SET_PRINT_DEFAULTS suivante.
Si une erreur se produit lors de la transmission des informations sur l'imprimante, elle est journalisée
dans le rapport d'activation et le Job se termine avec le code retour 10.
Exemple
OA_ADD_PRINTER PRINTER='HPLJ',COPIES=2
Rubriques connexes :
Généralités sur le JCL Oracle Applications
4.2.5 OA_SET_PRINT_DEFAULTS
Définition de valeurs par défaut pour les paramètres d'impression utilisés lors de l'exécution de
programmes simultanés.
Syntaxe
OA_SET_PRINT_DEFAULTS
PRINTER=...
[,STYLE=...]
[,COPIES=...]
Elément de syntaxe
Description/format
PRINTER=
Nom de l'imprimante
Format : Littéral de script
STYLE=
Style
Format : Littéral de script
408
Chapter 4 JCL UC4 pour les applications
COPIES=
Nombre de copies
Format : Nombre
Valeur par défaut : "0"
Remarques
Les scripts permettent d'attribuer des valeurs par défaut aux paramètres d'impression. Celles-ci
s'appliquent à l'ensemble du script ou jusqu'à l'attribution d'une nouvelle valeur par défaut. Les valeurs par
défaut ne sont valides que pour le Job dans lequel elles ont été définies.
La définition de valeurs par défaut améliore la visibilité du script UC4. En même temps, les problèmes liés
à la limitation á 255 caractères/ligne sont évités car l'instruction de traitement même est seulement
compilée dans l'Agent pour Oracle Applications.
Le Script est utilisé avec OA_SUBMIT_REQUEST pour attribuer des valeurs par défaut aux paramètres
d'impression.
Exemple
L'exemple suivant montre comment sont définies les valeurs par défaut pour l'imprimante et le nombre
d'exemplaires.
OA_SET_PRINT_DEFAULTS PRINTER='MINE'
OA_SET_PRINT_DEFAULTS COPIES=2
OA_SUBMIT_REQUEST APPLICATION='FND',PROGRAM='MYPROG',DESCRIPTION='Exécution
du dimanche de UC4',ARG1='602'
Rubriques connexes :
Généralités sur le JCL Oracle Applications
4.2.6 OA_SUBMIT_REQUEST
Envoi d'une requête d'exécution d'un programme simultané dans Oracle Applications.
Syntaxe
OA_SUBMIT_REQUEST
APPLICATION=...
,PROGRAM=...
[,DESCRIPTION=...]
[,ARG1=...[,ARGn=...]]
Elément de syntaxe
Description/format
APPLICATION=
Nom de l'application à laquelle appartient le programme à exécuter.
Format : Littéral de script
Automation Engine
PROGRAM=
Nom du programme simultané qui doit être exécuté.
Format : Littéral de script
DESCRIPTION=
Description du processus simultané.
Format : Littéral de script
409
Cette description est affichée en ligne sous forme d'une Concurrent Request.
ARG1=
:
ARGn=
Paramètres quelconques transmis au programme simultané.
Il peut s'agir de fonctions, de constantes, de mots clés, etc.
Exemples : chr(0), NULL, 'abc', NAME_IN('ORDERS.ORDER_ID'), 123
Format : Littéral de script
Remarques
Le Script génère une requête de processus pour un programme simultané dans Oracle Applications et
surveille l'exécution. UC4 reconnaît la fin du processus simultané grâce à la phase et au statut
correspondant.
Les paramètres ARG1 à ARGn doivent être placés entre des guillemets doubles suivis de guillemets
simples, sauf s'il s'agit de Variables.
Exemple
Dans l'exemple, le programme simultané "MYPROG" doit être exécuté dans Oracle Applications. En
outre, la description et un paramètre supplémentaire sont transmis.
OA_SUBMIT_REQUEST
APPLICATION='FND',PROGRAM='MYPROG',DESCRIPTION="'Exécution du dimanche
d'UC4'",ARG1="'602'"
L'exemple suivant montre l'utilisation des guillemets autour du paramètre ARG1.
OA_SUBMIT_REQUEST APPLICATION='FND',PROGRAM='FNDPRNEV',ARG1="'PRINTER'"
Rubriques connexes :
Généralités sur le JCL Oracle Applications
4.3 PeopleSoft
4.3.1 Généralités sur le JCL PeopleSoft
Le résumé suivant présente le Script JCL pour PeopleSoft et les interfaces correspondantes.
Scripts et interfaces utilisées
Elément de script
Description
Interface
410
Chapter 4 JCL UC4 pour les applications
PS_GET_
HEARTBEAT
Surveillance d'un PeopleSoft Process Scheduler
Server.
PROCESSREQUEST_
SBB
PS_GRANT_
OUTPUT_ACCESS
Autorise l'accès des Utilisateurs ou rôles à la
sortie du processus PeopleSoft.
PROCESSREQUEST_
SBB
PS_MODIFY_
RUNCONTROL
Modification de paramètres particuliers dans des
contrôles d'exécution.
PROCESSREQUEST_
SBB
PS_RUN_JOB
Démarrage et surveillance d'un Job PeopleSoft.
PROCESSREQUEST_
SBB
PS_RUN_PROCESS
Démarrage et surveillance d'un processus
PeopleSoft.
Pas de
PROCESSREQUEST
ou
PROCESSREQUEST_
SBB (dépend des
paramètres utilisés)
PS_SET_BINDVAR
Remplace la valeur d'une Variable de liaison dans
une définition de processus.
PROCESSREQUEST_
SBB
Rubriques connexes :
Généralités sur le JCL UC4 pour les applications
4.3.2 PS_GET_HEARTBEAT
Surveillance d'un PeopleSoft Process Scheduler Server.
Interface : PROCESSREQUEST_SBB
Version PeopleSoft : 8+
Syntaxe
PS_GET_HEARTBEAT
RUNLOCATION=...
[,MAXPERIOD=...]
Elément de syntaxe
Description/format
RUNLOCATION=
Nom d'un PeopleSoft Process Scheduler Batch Server attribué, par exemple
PSUNX ou PSNT.
Format : Littéral de script
MAXPERIOD=
Intervalle maximal autorisé (en secondes) entre l'heure système du serveur
de base de données PeopleSoft et l'heure du dernier battement de cœur du
Process Scheduler Server.
Format : Nombre
Automation Engine
411
Remarques
Chaque Process Scheduler Server se connecte régulièrement à la base de données PeopleSoft. Ce
processus est appelé "battement de cœur du Process Scheduler Server".
Le Script PS_GET_HEARTBEAT permet de surveiller la disponibilité du Process Scheduler Server. Il
détermine l'heure système du serveur de base de données PeopleSoft et l'heure du dernier battement de
cœur du Process Scheduler Server indiqué. Ces deux éléments sont ensuite affichés dans l'état
d'activation du Job UC4. Le message portant le numéro U2004942 indique l'heure du serveur de base de
données, puis celle du dernier battement de cœur. Ces informations peuvent être évaluées lors du post
traitement.
Si le paramètre facultatif MAXPERIOD est utilisé, l'écart entre l'heure du serveur de base de données
PeopleSoft et celle du dernier battement de cœur est calculé et comparé à l'intervalle indiqué ici. Si l'écart
calculé dépasse l'intervalle maximal autorisé, le Job UC4 est interrompu. S'il est inférieur ou égal à
l'intervalle maximal autorisé, le Job UC4 se termine normalement.
Exemples
Dans le premier exemple, l'heure système du serveur de base de données PeopleSoft et l'heure du dernier
battement de cœur du Process Scheduler Server "PSNT" sont déterminées et affichées dans l'état
d'activation.
PS_GET_HEARTBEAT RUNLOCATION='PSNT'
Le second exemple compare l'écart entre l'heure du serveur de base de données PeopleSoft et l'heure du
dernier battement de cœur du serveur "PSNT" à l'intervalle maximal autorisé. Le dernier battement de
cœur doit être intervenu au maximum 20 secondes avant l'heure du serveur de base de données
PeopleSoft.
PS_GET_HEARTBEAT RUNLOCATION='PSNT', MAXPERIOD=20
Rubriques connexes :
Généralités sur le JCL PeopleSoft
4.3.3 PS_GRANT_OUTPUT_ACCESS
Autorise l'accès des Utilisateurs ou rôles à la sortie du processus PeopleSoft.
Interface : PROCESSREQUEST_SBB
Version PeopleSoft : 8+
Syntaxe
PS_GRANT_OUTPUT_ACCESS
NAME=...
[,TYPE=...]
[,PID=...]
[,JOBITEM=...]
Elément de syntaxe
Description/format
412
Chapter 4 JCL UC4 pour les applications
NAME=
Identification des autorisations : nom d'un rôle ou d'un Utilisateur
Format : Littéral de script
TYPE=
Type d'autorisation : Rôle ou Utilisateur
Format : Littéral de script
Valeurs autorisées : "R" (par défaut) et "U"
"R" - Autorisation accordée à un rôle.
"U" - Autorisation accordée à un Utilisateur.
Si vous indiquez autre chose que "R" ou "U", l'Agent utilise
automatiquement la valeur "R".
PID=
Numéro d'instance du processus
Format : Nombre
JOBITEM=
Numéro d'item d'un processus au sein d'un Job PeopleSoft
Format : Nombre
Remarques
Le Script permet d'attribuer de manière dynamique et automatisée des autorisations d'accès à la sortie
d'un processus PeopleSoft, après l'exécution de celui-ci. Les autorisations peuvent être accordées pour
des rôles ou des Utilisateurs.
Le paramètre facultatif PID= permet de spécifier un processus précis. Si vous ne l'utilisez pas, le Script se
réfère à la dernière instance de processus (PS_RUN_PROCESS) ou de Job (PS_RUN_JOB) démarrée
ou surveillée.
Si le Script fait référence à un Job PeopleSoft, vous pouvez accorder des autorisations particulières pour
chaque processus de ce Job à l'aide de JOBITEM=. Le paramètre JOBITEM=1 désigne les autorisations
accordées au premier processus, JOBITEM=2 au deuxième processus, etc. Au cas où ce paramètre n'est
pas renseigné, tous les processus du Job PeopleSoft bénéficient des mêmes autorisations.
Exemple
Dans l'exemple, une autorisation d'accès à la sortie d'un processus PeopleSoft est accordée à l'Utilisateur
"PS".
PS_GRANT_OUTPUT_ACCESS NAME='PS',TYPE='U'
Rubriques connexes :
Généralités sur le JCL PeopleSoft
4.3.4 PS_MODIFY_RUNCONTROL
Modification de paramètres particuliers dans des contrôles d'exécution.
Interface : PROCESSREQUEST_SBB
Version PeopleSoft : 8+
Automation Engine
413
Syntaxe
PS_MODIFY_RUNCONTROL
RUNCONTROLID=...
,RECORDNAME=...
,FIELDNAME=...
,FIELDVALUE=...
[,KEYNAME(1)=...
,KEYVALUE(1)=...]
[,KEYNAME(2)=...
,KEYVALUE(2)=...]
[,KEYNAME(3)=...
,KEYVALUE(3)=...]
Elément de syntaxe
Description/format
RUNCONTROLID=
ID de contrôle d'exécution du Job PeopleSoft.
Format : Littéral de script
RECORDNAME=
Nom d'un enregistrement PeopleSoft qui fait partie d'un contrôle d'exécution.
Format : Littéral de script
FIELDNAME=
Nom d'un champ de l'enregistrement PeopleSoft.
Format : Littéral de script
FIELDVALUE=
Valeur qui doit être attribuée au champ.
Format : Littéral de script
KEYNAME(n)=
Clé figurant dans la table des contrôles d'exécution.
Format : Littéral de script
La lettre "n" indique le niveau. Les valeurs comprises entre 1 et 3 sont
autorisées.
KEYVALUE(n)=
Valeur du champ de clé
Format : Littéral de script
La lettre "n" indique le niveau. Les valeurs comprises entre 1 et 3 sont
autorisées.
Remarques
Le Script permet d'attribuer de nouvelles valeurs aux champs des enregistrements PeopleSoft et de
modifier ainsi directement les paramètres des contrôles d'exécution. Les PeopleCodes définis pour
l'enregistrement et les champs n'étant alors pas exécutés, vous devez vous assurer de la plausibilité des
nouvelles valeurs. L'attribution incorrecte de valeurs peut également aboutir à des incohérences. C'est le
cas, par exemple, si vous affectez une nouvelle valeur à une date de début sans redéfinir la date de fin
correspondante.
Pour éviter tout conflit, nous vous recommandons de créer des ID de contrôle d'exécution et de les utiliser
pour les traitements batch avec UC4.
Si une clé est absente ou erronée, la modification est interrompue et le Job présente une fin anormale.
414
Chapter 4 JCL UC4 pour les applications
Les tableaux de contrôle d'exécution PeopleSoft possèdent toujours 2 clés fixes : OPRID et RUN_
CNTL_ID. Veuillez noter que ces paramètres ne sont pas à indiquer lors de l'utilisation du Script, car ils
sont générés automatiquement. Sinon, les modifications ne sont pas effectuées dans le tableau.
Exemple
Dans le premier exemple, une nouvelle date est attribuée au champ "ASOFDATE" de l'enregistrement
PeopleSoft "RUN_CTRL_HR".
PS_MODIFY_RUNCONTROL RUNCONTROLID='sbb',RECORDNAME='RUN_CNTL_
HR',FIELDNAME='ASOFDATE',FIELDVALUE='20020117'
Le second exemple présente la modification d'un contrôle d'exécution pour la conversion monétaire.
PS_MODIFY_RUNCONTROL RUNCONTROLID='myRunControl',RECORDNAME='RUN_CNTL_CC2_
EO',FIELDNAME='RATE_MULT',FIELDVALUE='100',KEYNAME(1)='CURRENCY_
CD',KEYVALUE(1)='AUT'
Rubriques connexes :
Modifications apportées aux contrôles d'exécution
Généralités sur le JCL de PeopleSoft
4.3.5 PS_RUN_JOB
Démarrage et surveillance d'un Job PeopleSoft.
Interface : PROCESSREQUEST_SBB
Version PeopleSoft : 8+
Syntaxe
PS_RUN_JOB
JOBNAME=...
,RUNCONTROLID=...
[,RUNLOCATION=...]
[,OUTPUTDEST=...]
[,OUTDESTTYPE=...]
[,OUTDESTFORMAT=...]
Elément de syntaxe
Description/format
JOBNAME=
Nom du Job PeopleSoft à démarrer et à surveiller.
Format : Littéral de script
RUNCONTROLID=
ID de contrôle d'exécution du Job PeopleSoft.
Format : Littéral de script
RUNLOCATION=
Nom d'un PeopleSoft Process Scheduler Batch Server attribué, par exemple
PSUNX ou PSNT.
Format : Littéral de script
OUTPUTDEST=
Répertoire dans lequel la sortie du Job PeopleSoft est écrite.
Format : Littéral de script
Automation Engine
OUTDESTTYPE=
415
Type de sortie du Job PeopleSoft (par exemple, un fichier, une imprimante ou
un e-mail).
Format : Littéral de script
Vous pouvez afficher toutes les valeurs valides à l'aide de l'interrogation de
base de données suivante :
select XLATSHORTNAME from XLATTABLE where FIELDNAME =
'OUTDESTTYPE';
OUTDESTFORMAT=
Format de fichier dans lequel la sortie du Job PeopleSoft doit être enregistrée
(par exemple, TXT, HTM ou PDF).
Format : Littéral de script
Vous pouvez afficher toutes les valeurs valides à l'aide de l'interrogation de
base de données suivante :
select XLATSHORTNAME from XLATTABLE where FIELDNAME =
'OUTDESTFORMAT';
Remarques
Le Script démarre un Job PeopleSoft et surveille son exécution. Un Job PeopleSoft permet d'exécuter
plusieurs processus PeopleSoft successivement ou parallèlement.
Le nom du Job PeopleSoft est issu de la définition qui figure dans le Process Scheduler Manager de
PeopleSoft. Le nom du Process Scheduler Batch Server attribué doit également correspondre à une
définition (si ce paramètre est utilisé).
OUTPUTDEST, OUTDESTTYPE et OUTDESTFORMAT sont des paramètres facultatifs qui peuvent
être utilisés pour donner des précisions sur la sortie du Job PeopleSoft.
Le Script ne peut être utilisé que si l'administrateur UC4 a installé l'interface PROCESSREQUEST_
SBB et l'a activée dans le fichier INI de l'Agent.
Les Variables de liaison ne peuvent pas être utilisées dans PS_RUN_JOB.
Exemple
Dans l'exemple, des paramètres facultatifs sont utilisés pour enregistrer la sortie du Job PeopleSoft sous
la forme d'un fichier SPF dans un répertoire temporaire.
PS_RUN_JOB
JOBNAME='3SQR',RUNCONTROLID='sbb',RUNLOCATION=PSNT,OUTDESTTYPE='FILE',OUTDE
STFORMAT='SPF',OUTPUTDEST='c:\temp'
Rubriques connexes :
Généralités sur le JCL PeopleSoft
4.3.6 PS_RUN_PROCESS
Démarrage et surveillance d'un processus PeopleSoft.
416
Chapter 4 JCL UC4 pour les applications
Syntaxe
PS_RUN_PROCESS
PROCESSNAME=...
,PROCESSTYPE=...
,RUNLOCATION=...
,RUNCONTROLID=...
[,OUTPUTDEST=...]
[,OUTDESTTYPE=...]
[,OUTDESTFORMAT=...]
Elément de syntaxe
Description/format
PROCESSNAME=
Nom du processus PeopleSoft à démarrer et à surveiller.
Format : Littéral de script
PROCESSTYPE=
Type du processus PeopleSoft
Format : Littéral de script
RUNLOCATION=
Nom d'un PeopleSoft Process Scheduler Batch Server attribué, par exemple
PSUNX ou PSNT.
Format : Littéral de script
RUNCONTROLID=
ID de contrôle d'exécution du processus PeopleSoft.
Format : Littéral de script
OUTPUTDEST=
Répertoire dans lequel la sortie du processus PeopleSoft est écrite.
Format : Littéral de script
OUTDESTTYPE=
Type de sortie du processus PeopleSoft (par exemple, un fichier, une
imprimante ou un e-mail).
Format : Littéral de script
Vous pouvez afficher toutes les valeurs valides à l'aide de l'interrogation de
base de données suivante :
select XLATSHORTNAME from XLATTABLE where FIELDNAME =
'OUTDESTTYPE';
Interface : PROCESSREQUEST et PROCESSREQUEST_SBB
Version PeopleSoft : 8+
OUTDESTFORMAT=
Format de fichier dans lequel la sortie du processus PeopleSoft doit être
enregistrée (par exemple, TXT, HTM ou PDF).
Format : Littéral de script
Vous pouvez afficher toutes les valeurs valides à l'aide de l'interrogation de
base de données suivante :
select XLATSHORTNAME from XLATTABLE where FIELDNAME =
'OUTDESTFORMAT';
Interface : PROCESSREQUEST et PROCESSREQUEST_SBB
Version PeopleSoft : 8+
Remarques
Le Script génère une demande de processus pour un processus PeopleSoft et surveille l'exécution. La fin
du processus PeopleSoft est détectée à l'aide du statut de run, lequel a été enregistré dans la base de
Automation Engine
417
données PeopleSoft.
Le nom et le type du processus PeopleSoft sont issus des définitions qui figurent dans le "Process
Scheduler Manager" de PeopleSoft. Le nom du Process Scheduler Batch Server attribué doit également
correspondre à une définition.
OUTPUTDEST, OUTDESTTYPE et OUTDESTFORMAT sont des paramètres facultatifs qui peuvent
être utilisés pour donner des précisions sur la sortie du processus PeopleSoft.
Certains paramètres du Script dépendent de la version PeopleSoft définie et sont identifiés dans le tableau
de syntaxe.
Exemples
Dans le premier exemple, le processus PeopleSoft "THR200" est lancé par le type de processus "SQR
Report".
PS_RUN_PROCESS PROCESSNAME='THR200',PROCESSTYPE='SQR
Report',RUNLOCATION='PSUNX',RUNCONTROLID='mlc',OUTPUTDEST='/tmp/'
Dans le second exemple, des paramètres facultatifs sont utilisés pour enregistrer la sortie du processus
PeopleSoft sous la forme d'un fichier PDF dans un répertoire temporaire.
PS_RUN_PROCESS PROCESSNAME='DDDAUDIT',PROCESSTYPE='SQR
Report',RUNLOCATION='PSNT',RUNCONTROLID='sbb',OUTDESTTYPE='FILE',OUTDESTFOR
MAT='PDF',OUTPUTDEST='c:\temp'
Rubriques connexes :
Généralités sur le JCL PeopleSoft
4.3.7 PS_SET_BINDVAR
Remplace la valeur d'une Variable de liaison dans une définition de processus.
Interface : PROCESSREQUEST_SBB
Version PeopleSoft : 8+
Syntaxe
PS_SET_BINDVAR
NAME=...
,MODE='V'
,VALUE=...
PS_SET_BINDVAR
NAME=...
,MODE='D'
,RUNCONTROLID=...
418
Chapter 4 JCL UC4 pour les applications
Elément de syntaxe
Description/format
NAME=
Nom de la Variable de liaison devant être remplacée
Format : Littéral de script
MODE=
Type de remplacement
Format : Littéral de script
Valeurs possibles: "V" et "D"
"V" - La valeur sera prédéfinie avec le paramètre "VALUE=".
"D" - Le remplacement se fait en entrant un Run Control ID avec le paramètre
"RUNCONTROLID".
VALUE=
Valeur à utiliser pour le remplacement
Format : Littéral de script
RUNCONTROLID=
Indication d'un Run Control ID
Format: Littéral de script
Exemples
Les deux exemples suivants présentent un remplacement utilisant une valeur prédéfinie et un autre
effectué par le biais d'un ID de contrôle d'exécution.
PS_SET_BINDVAR NAME=':RUN_CNTL_HR.COURSE',VALUE='K014',MODE='V'
PS_RUN_PROCESS PROCESSNAME='TRN023-',PROCESSTYPE='Crystal',RUNCONTROLID='ang',RUNLOCATION='PSNT'
PS_MODIFY_RUNCONTROL RUNCONTROLID='ang',RECORDNAME='RUN_CNTL_
HR',FIELDNAME='COURSE',FIELDVALUE='K014'
PS_SET_BINDVAR NAME=':RUN_CNTL_
HR.COURSE',VALUE='',MODE='D',RUNCONTROLID='ang'
PS_RUN_PROCESS PROCESSNAME='TRN023-',PROCESSTYPE='Crystal',RUNCONTROLID='ang',RUNLOCATION='PSNT'
Rubriques connexes :
Utilisation de Variables de liaison
Généralités sur JCL PeopleSoft
4.4 SAP
4.4.1 SAP Basis
Généralités sur le JCL SAP
Vous pouvez associer des lignes contenant du JCL SAP à l'aide de l'instruction :JCL_CONCAT_
CHAR. Les lignes JCL ainsi constituées peuvent contenir jusqu'à 2047 caractères. Toutefois, la
longueur de chaque ligne de script est limitée à 1024 caractères.
Certaines instructions du JCL SAP dépendent de l'interface utilisée. Les différences de syntaxe exactes
sont décrites avec les diverses instructions. Pour connaître les instructions disponibles selon l'interface,
reportez-vous au chapitre Différences au niveau des fonctions.
Automation Engine
419
Les propriétés des tous les champs transmis par UC4 aux interfaces SAP (nom d'imprimante ou de
programme, par exemple) en particulier les longueurs maximales, les valeurs autorisées, etc. ne sont PAS
contenues dans la Documentation UC4. La description de ces champs figure dans le dictionnaire SAP
(selon la version SAP).
Pour le script JCL SAP, les valeurs du paramètre doivent forcément être définies uniquement comme
littéral de script lorsque la valeur contient des espaces. Sinon, l'utilisation des guillemets est optimale
dans une valeur, indépendamment du fait que ce soit pour un nombre, un caractère ou une chaîne de
caractères.
R3_ACTIVATE_CM_PROFILE
Active un profil dans le Gestionnaire de critères SAP.
Transaction : SM62
Interface : Standard
Syntaxe
R3_ACTIVATE_CM_PROFILE
ID=...
,TYPE=...
Elément de syntaxe
Description/format
ID=
ID du profil
Format : Nombre
TYPE=
Type du profil
Format : Littéral de script
Valeurs autorisées : "EVHIRO", "EVTHIS" et "INTERC"
"EVHIRO" - Réorganisation de l'Historique des Evènements
"EVTHIS" - Historique des Evènements
"INTERC" - Interception de Job
Remarques
Un seul profil peut être activé par type de profil.
Exemple
L'exemple active le profil avec l'ID "5" pour l'interception de Job
R3_ACTIVATE_CM_PROFILE ID="5",TYPE="INTERC"
Rubriques connexes :
Généralités sur le JCL SAP
420
Chapter 4 JCL UC4 pour les applications
R3_ACTIVATE_EXT_COMMAND
Exécute une commande externe.
Transaction : SM37
Interface : Standard
Syntaxe
R3_ACTIVATE_EXT_COMMAND
COMMAND=...
OPSYSTEM=...
[,PARAMS=...]
,TARGET_SERVER=...
[,STDOUT=...]
[,STDERR=...]
[,TRACE=...]
[,TERM=...]
Elément de syntaxe
Description/format
COMMAND=
Nom de la définition de la commande externe.
Format : Littéral de script
OPSYSTEM=
Système hôte sur lequel la commande doit être exécutée.
Format : Littéral de script
PARAMS=
Paramètre de la commande externe.
Format : Littéral de script
Valeur par défaut : ""
TARGET_S[ERVER]=
Nom de l'ordinateur sur lequel la commande doit être exécutée.
Format : Littéral de script
Indicateurs de contrôle
STDOUT=
Ce paramètre permet de reprendre la sortie externe dans le log du Job.
Format : Littéral de script
Valeurs autorisées : "" (valeur par défaut) et "X"
"" - L'indicateur de contrôle n'est pas défini.
"X" - La sortie externe est reprise dans le log du Job.
STDERR=
Ce paramètre permet de reprendre les erreurs externes dans le log du Job.
Format : Littéral de script
Valeurs autorisées : "" (valeur par défaut) et "X"
"" - L'indicateur de contrôle n'est pas défini.
"X" - Les erreurs externes sont reprises dans le log du Job.
TRACE=
Ce paramètre permet d'activer la trace.
Format : Littéral de script
Valeurs autorisées : "" (valeur par défaut) et "X"
"" - L'indicateur de contrôle n'est pas défini.
"X" - La trace est activée.
Automation Engine
TERM=
421
Le Job attend la terminaison externe
Format : Littéral de script
Valeurs autorisées : "" (valeur par défaut) et "X"
"" - L'indicateur de contrôle n'est pas défini.
"X" - Le Job attend la terminaison externe.
Exemple
R3_ACTIVATE_EXT_COMMAND COMMAND='NET_ROUTING',OPSYSTEM='Windows NT',TARGET_
SERVER='NB0053',STDOUT='X',STDERR='X',TERM='X'
Rubriques connexes :
Généralités sur le JCL SAP
R3_ACTIVATE_EXT_PROGRAM
Exécute un programme externe.
Transaction : SM37
Interface : Standard
Syntaxe
R3_ACTIVATE_EXT_PROGRAM
PROGRAM=...
[,PARAMS=...]
,TARGET_SERVER=...
[,STDOUT=...]
[,STDERR=...]
[,TRACE=...]
[,TERM=...]
Elément de syntaxe
Description/format
PROGRAM=
Nom du programme à exécuter.
Format : Littéral de script
PARAMS=
Paramètre du programme.
Format : Littéral de script
Valeur par défaut : ""
TARGET_S[ERVER]=
Indicateurs de contrôle
Nom de l'ordinateur sur lequel le programme doit être exécuté.
Format : Littéral de script
422
Chapter 4 JCL UC4 pour les applications
STDOUT=
Ce paramètre permet de reprendre la sortie externe dans le log du Job.
Format : Littéral de script
Valeurs autorisées : "" (valeur par défaut) et "X"
"" - L'indicateur de contrôle n'est pas défini.
"X" - La sortie externe est reprise dans le log du Job.
STDERR=
Ce paramètre permet de reprendre les erreurs externes dans le log du Job.
Format : Littéral de script
Valeurs autorisées : "" (valeur par défaut) et "X"
"" - L'indicateur de contrôle n'est pas défini.
"X" - Les erreurs externes sont reprises dans le log du Job.
TRACE=
Ce paramètre permet d'activer la trace.
Format : Littéral de script
Valeurs autorisées : "" (valeur par défaut) et "X"
"" - L'indicateur de contrôle n'est pas défini.
"X" - La trace est activée.
TERM=
Le Job attend la terminaison externe
Format : Littéral de script
Valeurs autorisées : "" (valeur par défaut) et "X"
"" - L'indicateur de contrôle n'est pas défini.
"X" - Le Job attend la terminaison externe.
Exemple
R3_ACTIVATE_EXT_PROGRAM PROGRAM='dir',PARAMS='*.*',TARGET_
SERVER='NB0053',STDOUT='X',STDERR='X',TERM='X'
Rubriques connexes :
Généralités sur le JCL SAP
R3_ACTIVATE_INTERCEPTED_JOBS
Exécute des Jobs interceptés sous le contrôle d'UC4. Les Jobs interceptés à démarrer sont déterminés
par le biais d'une sélection.
Transaction : SM37
Interface :Standard (XBP 2.0)
Syntaxe
R3_ACTIVATE_INTERC[EPTED_JOBS]
NAME=...
[,GROUP=...]
[,USER=...]
[,NOFOUND=...]
[,ERROR=...]
Automation Engine
423
[,SELECT=...]
[,START_DATE=...]
[,START_TIME=...]
[,END_DATE=...]
[,END_TIME=...]
[,JOBCOUNT=...]
[,TARGET_SERVER=...]
[,WAIT=...]
[,REPLICATE=...]
[,ABORTED=...]
[,GET_SPOOL=...]
Elément de
syntaxe
Description/format
NAME=
Sélection d'un ou plusieurs Jobs interceptés en fonction du nom
Format de la valeur : Littéral de script
Le nom et le numéro permettent d'identifier chaque Job SAP de manière univoque. Pour
sélectionner plusieurs Jobs, vous pouvez utiliser le caractère générique "*" (par
exemple, "xxx*").
GROUP=
Sélection des Jobs interceptés en fonction des Groupes (par exemple, "xxx*")
Format de la valeur : Littéral de script
Valeur par défaut : "*"
USER=
Sélection des Jobs interceptés en fonction des Utilisateurs (par exemple, "xxx*")
Format de la valeur : Littéral de script
Valeur par défaut : "*"
NOFOUND=
Comportement adopté si les critères de sélection des Jobs interceptés ne donnent
aucun résultat.
Format de la valeur : Littéral de script
Valeurs autorisées : "NORMAL" (valeur par défaut), "ABEND".
"NORMAL" - Le script continue, le Job UC4 se termine normalement.
"ABEND" - Le script s'interrompt, le Job UC4 se termine anormalement.
ERROR=
Comportement adopté si un Job intercepté se termine de façon anormale.
Format de la valeur : Littéral de script
Valeurs autorisées : "ABEND" (valeur par défaut), "IGNORE".
"ABEND" - Le script s'interrompt, le Job UC4 se termine anormalement.
"IGNORE" - Le script continue, le Job UC4 se termine normalement.
SEL[ECT]=
Sélectionner une fois ou de manière permanente
Format de la valeur : Littéral de script
Valeurs autorisées : "ONCE" (valeur par défaut) et "EVERY"
"ONCE" - Les résultats sont transmis une seule fois (= nombre de Jobs planifiés).
"EVERY" - Les résultats sont transmis après chaque publication d'un nouveau Job.
Cette technique permet la mise en parallèle des Jobs planifiés.
424
Chapter 4 JCL UC4 pour les applications
START_D
[ATE]=
Date de début de la sélection
Format de la valeur : Littéral de script
Format de date : AAAAMMJJ
Valeur par défaut: "20000101"
Si ce paramètre est utilisé sans le paramètre END_DATE=, tous les Jobs planifiés à
partir de la date de début indiquée sont sélectionnés et démarrés.
START_T
[IME]=
Heure de début de la sélection
Format de la valeur : Littéral de script
Format d'heure : HHMMSS
Valeur par défaut : "000000"
Si ce paramètre est utilisé sans le paramètre END_TIME=, tous les Jobs planifiés à
partir de l'heure de début indiquée sont sélectionnés et démarrés. L'heure de fin est
23:59.
END_D[ATE]
=
Date de fin de la sélection
Format de la valeur : Littéral de script
Format de date : AAAAMMJJ
Valeur par défaut : date actuelle
Pour sélectionner tous les Jobs planifiés pour un jour donné, indiquez pour ce
paramètre la même date que pour START_DATE=.
END_T[IME]
=
Heure de fin de la sélection
Format de la valeur : Littéral de script
Format d'heure : HHMMSS
Valeur par défaut : "235959"
JOBCOUNT= Numéro du Job intercepté
Format de la valeur : Littéral de script
Valeur par défaut : "*"
Le nom et le numéro permettent d'identifier chaque Job SAP de manière univoque.
TARGET_S
[ERVER]=
Système de destination que doit utiliser le Job intercepté.
Format de la valeur : Littéral de script
Valeurs autorisées : "KEEP" (valeur par défaut) et "ATTRIBUTE"
"KEEP" - Le système cible saisi dans l'original du Job est gardé.
"ATTRIBUTE" - Le système cible issu des attributs de l'hôte est utilisé.
WAIT=
Attente de la fin du processus enfant d'un Job intercepté
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"NO" - Le système n'attend pas la fin de tous les processus enfant.
"YES" - Le système attend la fin de tous les processus enfant.
Automation Engine
REPL
[ICATE]=
425
Traitement des enfants du Job intercepté
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Les processus enfant d'un Job sont répliqués dans le système UC4. Ils
apparaissent alors dans la Fenêtre d'Activités de l'Interface Utilisateur. De plus, le
système UC4 crée des statistiques et des rapports.
"NO" - Pas de réplication dans le système UC4.
ABORTED=
Réaction à la fin anormale des processus enfant d'un Job intercepté
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" (valeur par défaut) et "NO"
"YES" = Le script n'est pas poursuivi, le Job UC4 se termine anormalement.
"NO" = Le script est poursuivi, le Job UC4 se termine normalement.
GET_
SPOOL=
Demander la liste Spool du Job démarré
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Demander la liste Spool. Celle-ci est enregistrée en tant que fichier texte dans
le répertoire que vous définissez dans le fichier INI de l'Agent SAP avec le paramètre
Download_dir= (section [GLOBAL]). Le nom de ce fichier se compose de la manière
suivante :
Par ailleurs, ce fichier est enregistré comme résultat de Job dans le Job UC4.
"NO" = La liste Spool n'est pas demandée
Remarques
Le script détermine tous les Jobs interceptés en fonction des critères de sélection indiqués. Le Client SAP
indiqué dans l'objet Login auquel le Job UC4 se réfère est utilisé pour la sélection.
Exemple
Dans l'exemple, tous les Jobs interceptés doivent être démarrés. Le Job UC4 n'est pas interrompu si
aucun Job intercepté n'est trouvé.
R3_ACTIVATE_INTERCEPTED_JOBS NAME='*',GROUP='*',USER='*',NOFOUND='NORMAL'
Rubriques connexes :
Généralités sur le JCL SAP
R3_ACTIVATE_JOBS
Exécute des Jobs déjà planifiés dans SAP sous le contrôle d'UC4. Les Jobs à démarrer sont
déterminés par le biais d'une sélection.
Transaction : SM37
Interface : UC4 et Standard
426
Chapter 4 JCL UC4 pour les applications
Interface UC4
[UC4] [Valeur par défaut]
Syntaxe
R3_ACTIVATE_JOB[S]
NAME=...
[,JOBCOUNT=...]
[,GROUP=...]
[,USER=...]
[,NOFOUND=...]
[,ERROR=...]
[,SELECT=...]
[,START=...]
[,NEW_NAME=...]
[,START_D[ATE]=...]
[,START_T[IME]=...]
[,END_D[ATE]=...]
[,END_T[IME]=...]
[,TARGET_S[ERVER]=...]
[,BEG_LOGLINES=...]
[,END_LOGLINES=...]
[,GET_SPOOL=...]
Elément de syntaxe
Description/format
NAME=
Sélection d'un ou de plusieurs Jobs d'après leur nom.
Format : Littéral de script ou Nom UC4
Le nom et le numéro permettent d'identifier chaque Job SAP de
manière univoque. Pour sélectionner plusieurs Jobs, vous pouvez
utiliser le caractère générique "*" (par exemple, "xxx*").
Paramètres
Critères de sélection supplémentaires, sous la forme d'un mot-clé
auquel est attribuée une valeur.
Si vous ne précisez pas de valeur pour un paramètre, une valeur par
défaut lui est affectée. Les formats indiqués s'appliquent à la valeur
attribuée au mot-clé.
JOBCOUNT=
Numéro du Job SAP
Format: Littéral de script
Le nom et le numéro permettent d'identifier chaque Job SAP de
manière univoque.
GROUP=
Sélection des Jobs en fonction de leurs Groupes (par exemple,
"xxx*")
Format : Littéral de script ou Nom UC4
Valeur par défaut : "*"
Automation Engine
Elément de syntaxe
Description/format
USER=
Sélection des Jobs en fonction de leurs Utilisateurs (par exemple,
"xxx*")
Format : Littéral de script ou Nom UC4
427
Valeur par défaut : "*"
NOFOUND=
Comportement adopté si les critères de sélection des Jobs ne
donnent aucun résultat.
Format : Littéral de script
Valeurs autorisées : "NORMAL" (valeur par défaut), "ABEND".
"NORMAL" - Le script continue, le Job UC4 se termine
normalement.
"ABEND" - Le script s'interrompt, le Job UC4 se termine
anormalement.
ERROR=
Comportement adopté si un Job parmi ceux sélectionnés se termine
de façon anormale
Format: Littéral de script
Valeurs autorisées : "ABEND" (valeur par défaut), "IGNORE".
"ABEND" - Le script s'interrompt, le Job UC4 se termine
anormalement.
"IGNORE" - Le script continue, le Job UC4 se termine normalement.
SELECT=
Sélection unique ou permanente
Format : Littéral de script
Valeurs autorisées : "ONCE" (valeur par défaut) et "EVERY"
"ONCE" = Le nombre de correspondances (= nombre de Jobs à
lancer) est déterminé une seule fois.
"EVERY" - Le nombre de correspondances est déterminé à chaque
libération de Job. Cette technique permet la mise en parallèle des
Jobs lancés.
START=
Le système doit-il démarrer l'original ou une copie du Job
Format : Littéral de script
Valeurs autorisées : "ORIGINAL" (Valeur par défaut) et
"DUPLICATE"
NEW_NAME=
Nom du Job démarré en tant que copie
Format : Littéral de script
Ce paramètre n'est analysé que si START=DUPLICATE a été
indiqué. Si l'original du Job doit être démarré, le paramètre est
ignoré.
START_D[ATE]=
Date de début de la sélection des Jobs planifiés.
Format : Littéral de script
Format de date : AAAAMMJJ
Valeur par défaut: "20000101"
Si ce paramètre est utilisé sans le paramètre END_DATE, tous les
Jobs planifiés à partir de la date de début indiquée sont sélectionnés
et démarrés.
428
Chapter 4 JCL UC4 pour les applications
Elément de syntaxe
Description/format
START_T[IME]=
Heure de début de la sélection des Jobs planifiés.
Format : Littéral de script
Format d'heure : HHMMSS
Valeur par défaut : "000000"
Si ce paramètre est utilisé sans le paramètre END_TIME, tous les
Jobs planifiés à partir de l'heure de début indiquée sont sélectionnés
et démarrés. L'heure de fin est 23:59.
END_D[ATE]=
Date de fin de la sélection des Jobs planifiés.
Format : Littéral de script
Format de date : AAAAMMJJ
Valeur par défaut : date actuelle
Pour sélectionner tous les Jobs planifiés pour un jour donné,
indiquez pour ce paramètre la même date que pour START_DATE=.
END_T[IME]=
Date de fin de la sélection des Jobs planifiés.
Format : Littéral de script
Format de date : AAAAMMJJ
Valeur par défaut: "235959"
Pour sélectionner tous les Jobs planifiés pour un jour donné,
indiquez pour ce paramètre la même date que pour START_DATE=.
TARGET_S[ERVER]=
Système cible que doit utiliser le Job SAP lancé
Format : Littéral de script
Valeurs autorisées : "KEEP" (valeur par défaut) et "ATTRIBUTE"
"KEEP" - Le système cible saisi dans l'original du Job est gardé.
"ATTRIBUTE" - Le système cible issu des attributs de l'hôte est
utilisé.
BEG_LOGLINES=
Définit le nombre de lignes qui doivent être reprises depuis le début
du log du Job SAP dans le rapport de Job.
END_LOGLINES=
Nombre de lignes à la fin du log du Job SAP qui sont écrites dans le
rapport de Job.
Si le paramètre END_LOGLINES ou BEG_LOGLINES est indiqué,
l'intégralité du rapport de Job est utilisée par défaut. Si seul un
paramètre est affiché, alors seules les lignes du début ou de la fin du
rapport de Job sont lues.
Si "0" est la valeur indiquée pour les deux paramètres, aucun log de
Job n'est indiqué.
Seules des valeurs numériques sont autorisées pour les deux
paramètres.
Automation Engine
Elément de syntaxe
Description/format
GET_SPOOL=
Demander la liste Spool du Job démarré
Format de la valeur : Littéral de script
429
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Demander la liste Spool. Celle-ci est enregistrée en tant
que fichier texte dans le répertoire que vous définissez dans le
fichier INI de l'Agent SAP avec le paramètre Download_dir= (section
[GLOBAL]). Le nom de ce fichier se compose de la manière
suivante :
<SAP-Job-Count>_<Numéro d'étape>_<Numéro de Spool>.txt
Ce fichier est en plus enregistré comme résultat de Job dans le Job
UC4.
"NO" = La liste Spool n'est pas demandée
Exemple
Libérer tous les Jobs prévus de l'Utilisateur SAP "NI".
R3_ACTIVATE_JOBS NAME='*',GROUP='*',USER='NI'
Dans le second exemple, tous les Jobs planifiés entre le 01.07.2001 à 00:00:00 et le 02.07.2001 à
23:59:59 sont sélectionnés et démarrés.
R3_ACTIVATE_JOBS NAME='*',GROUP='*',USER='SUPPORT',START_
DATE='20010701',END_DATE='20010702'
Dans le second exemple, tous les Jobs planifiés entre le 01.07.2001 à 12:30:00 et le 02.07.2001 à
12:30:00 sont sélectionnés et démarrés.
R3_ACTIVATE_JOBS NAME='*',GROUP='*',USER='SUPPORT',START_DATE='20010701',
START_TIME='123000',END_DATE='20010702',END_TIME='123000'
Interface par défaut
[UC4] [Valeur par défaut]
Syntaxe
R3_ACTIVATE_JOB[S]
NAME=...
[,JOBCOUNT=...]
[,NOFOUND=...]
[,ERROR=...]
[,SELECT=...]
[,START=...]
[,NEW_NAME=...]
[,START_D[ATE]=...]
[,START_T[IME]=...]
[,END_D[ATE]=...]
[,END_T[IME]=...]
430
Chapter 4 JCL UC4 pour les applications
[,TARGET_S[ERVER]=...]
[,MON[ITOR]=...]
[,WAIT=...]
[,ABORTED=...]
[,REPL[ICATE]=...]
[,BEG_LOGLINES=...]
[,END_LOGLINES=...]
[,GET_SPOOL=...]
Elément de syntaxe
Description/format
NAME=
Sélection d'un ou de plusieurs Jobs d'après leur nom.
Format : Littéral de script ou Nom UC4
Le nom et le numéro permettent d'identifier chaque Job SAP de
manière univoque. Pour sélectionner plusieurs Jobs, vous pouvez
utiliser le caractère générique "*" (par exemple, "xxx*").
Paramètres
Critères de sélection supplémentaires, sous la forme d'un mot-clé
auquel est attribuée une valeur.
Si vous ne précisez pas de valeur pour un paramètre, une valeur par
défaut lui est affectée. Les formats indiqués s'appliquent à la valeur
attribuée au mot-clé.
JOBCOUNT=
Numéro du Job SAP
Format: Littéral de script
Le nom et le numéro permettent d'identifier chaque Job SAP de
manière univoque.
NOFOUND=
Comportement adopté si les critères de sélection des Jobs ne
donnent aucun résultat.
Format : Littéral de script
Valeurs autorisées : "NORMAL" (valeur par défaut), "ABEND".
"NORMAL" - Le script continue, le Job UC4 se termine
normalement.
"ABEND" - Le script s'interrompt, le Job UC4 se termine
anormalement.
ERROR=
Comportement adopté si un Job parmi ceux sélectionnés se termine
de façon anormale
Format: Littéral de script
Valeurs autorisées : "ABEND" (valeur par défaut), "IGNORE".
"ABEND" - Le script s'interrompt, le Job UC4 se termine
anormalement.
"IGNORE" - Le script continue, le Job UC4 se termine normalement.
Automation Engine
Elément de syntaxe
Description/format
SELECT=
Sélection unique ou permanente
Format : Littéral de script
431
Valeurs autorisées : "ONCE" (valeur par défaut) et "EVERY"
"ONCE" = Le nombre de correspondances (= nombre de Jobs à
lancer) est déterminé une seule fois.
"EVERY" - Le nombre de correspondances est déterminé à chaque
libération de Job. Cette technique permet la mise en parallèle des
Jobs lancés.
START=
Le système doit-il démarrer l'original ou une copie du Job
Format : Littéral de script
Valeurs autorisées : "ORIGINAL" (Valeur par défaut) et
"DUPLICATE"
NEW_NAME=
Nom du Job démarré en tant que copie
Format : Littéral de script
Ce paramètre n'est analysé que si START=DUPLICATE a été
indiqué. Si l'original du Job doit être démarré, le paramètre est
ignoré.
START_D[ATE]=
Date de début de la sélection des Jobs planifiés.
Format : Littéral de script
Format de date : AAAAMMJJ
Valeur par défaut: "20000101"
Si ce paramètre est utilisé sans le paramètre END_DATE, tous les
Jobs planifiés à partir de la date de début indiquée sont sélectionnés
et démarrés.
START_T[IME]=
Heure de début de la sélection des Jobs planifiés.
Format : Littéral de script
Format d'heure : HHMMSS
Valeur par défaut : "000000"
Si ce paramètre est utilisé sans le paramètre END_TIME, tous les
Jobs planifiés à partir de l'heure de début indiquée sont sélectionnés
et démarrés. L'heure de fin est 23:59.
END_D[ATE]=
Date de fin de la sélection des Jobs planifiés.
Format : Littéral de script
Format de date : AAAAMMJJ
Valeur par défaut : date actuelle
Pour sélectionner tous les Jobs planifiés pour un jour donné,
indiquez pour ce paramètre la même date que pour START_DATE=.
432
Chapter 4 JCL UC4 pour les applications
Elément de syntaxe
Description/format
END_T[IME]=
Date de fin de la sélection des Jobs planifiés.
Format : Littéral de script
Format de date : AAAAMMJJ
Valeur par défaut: "235959"
Pour sélectionner tous les Jobs planifiés pour un jour donné,
indiquez pour ce paramètre la même date que pour START_DATE=.
TARGET_S[ERVER]=
Système cible que doit utiliser le Job SAP lancé
Format : Littéral de script
Valeurs autorisées : "KEEP" (valeur par défaut) et "ATTRIBUTE"
"KEEP" - Le système cible saisi dans l'original du Job est gardé.
"ATTRIBUTE" - Le système cible issu des attributs de l'hôte est
utilisé.
MON[ITOR]=
Suivi du statut dans le protocole d'activation
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
WAIT=
Attente de la fin du processus enfant d'un Job SAP
Format de la valeur : Littéral de script ou Nom UC4
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Le système attend la fin de tous les processus enfant. Les
processus enfant seront inclus dans le protocole d'activation.
"NO" = Le système n'attend pas la fin de tous les processus enfant.
ABORTED=
Attente de la fin anormale du processus enfant d'un Job SAP
Format de la valeur : Littéral de script ou Nom UC4
Valeurs autorisées : "YES" (valeur par défaut) et "NO"
"YES" = Le Job SAP (parent) est interrompu. Le script est
interrompu et le Job UC4 se termine de façon anormale.
"NO" = Le Job SAP (parent) n'est pas interrompu. Le script se
poursuit et le Job UC4 se termine normalement.
REPL[ICATE]=
Traitement des processus enfant d'un Job
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Les processus enfant d'un Job sont répliqués dans le
système UC4. Ils sont affichés dans la Fenêtre d'Activités de
l'Interface Utilisateur. De plus, le système UC4 crée des
statistiques et des rapports.
"NO" - Pas de réplication dans le système UC4.
BEG_LOGLINES=
Définit le nombre de lignes qui doivent être reprises depuis le début
du log du Job SAP dans le rapport de Job.
Automation Engine
433
Elément de syntaxe
Description/format
END_LOGLINES=
Nombre de lignes à la fin du log du Job SAP qui sont écrites dans le
rapport de Job.
Si le paramètre END_LOGLINES ou BEG_LOGLINES est indiqué,
l'intégralité du rapport de Job est utilisée par défaut. Si seul un
paramètre est affiché, alors seules les lignes du début ou de la fin du
rapport de Job sont lues.
Si "0" est la valeur indiquée pour les deux paramètres, aucun log de
Job n'est indiqué.
Seules des valeurs numériques sont autorisées pour les deux
paramètres.
GET_SPOOL=
Demander la liste Spool du Job démarré
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Demander la liste Spool. Celle-ci est enregistrée en tant
que fichier texte dans le répertoire que vous définissez dans le
fichier INI de l'Agent SAP avec le paramètre Download_dir= (section
[GLOBAL]). Le nom de ce fichier se compose de la manière
suivante :
Par ailleurs, ce fichier est enregistré comme résultat de Job dans le
Job UC4.
"NO" = La liste Spool n'est pas demandée
Les entrées Spool des enfants sont uniquement requises lorsque le
paramètre REPLICATE= est défini soit sur YES, soit sur ALL.
Exemple
Tous les Jobs planifiés portant le nom "REORG_SPOOL" sont lancés.
R3_ACTIVATE_JOBS NAME='REORG_SPOOL',NOFOUND=ABEND
Rubriques connexes :
Généralités sur le JCL SAP
R3_ACTIVATE_REPORT
Exécute le Rapport sélectionné. Si nécessaire, vous pouvez indiquer une variante et divers paramètres
pour le contrôle de la liste.
Transaction : SM36, SM37
Interface : UC4 et Standard
Interface UC4
[UC4] [Valeur par défaut]
434
Chapter 4 JCL UC4 pour les applications
Syntaxe
R3_ACTIVATE_REP[ORT]
REPORT=...
[,VARIANT=...]
[,DESTINATION=...]
[,COPIES=...]
[,LIST_NAME=...]
[,LIST_TEXT=...]
[,IMMEDIATELY=...]
[,RELEASE=...]
[,NEW_LIST_ID=...]
[,EXPIRATION=...]
[,LINE_COUNT=...]
[,LINE_SIZE=...]
[,LAYOUT=...]
[,COVERPAGE=...]
[,SAP_COVER_PAGE=...]
[,OS_COVER_PAGE=...]
[,RECEIVER=...]
[,DEPARTMENT=...]
[,AUTHORITY=...]
[,DATA_SET=...]
[,TYPE=...]
[,SPOOL_PRIORITY=...]
[,TEXTONLY=...]
[,FRAMES=...]
[,ARCHIVE_MODE=...]
[,ARCHIVE_SAPOBJECT=...]
[,ARCHIVE_OBJECT=...]
[,ARCHIVE_INFO=...]
[,ARCHIVE_TEXT=...]
[,MONITOR=...]
[,BEG_LOGLINES=...]
[,END_LOGLINES=...]
[,GET_SPOOL=...]
Elément de syntaxe
Description/format
REP[ORT]=
Nom du rapport
Format : Littéral de script
VAR[IANT]=
Nom de la variante
Format : Littéral de script
Paramètres d'impression
Automation Engine
Elément de syntaxe
Description/format
DEST[INATION]=
Périphérique de sortie
Format : Littéral de script
435
Ce paramètre permet d'indiquer le nom du système de sortie. Il
s'agit dans la plupart des cas du nom d'une imprimante, mais il peut
également s'agir de celui d'un télécopieur, etc.
Attention : pour des raisons techniques liées à l'interface XBP
de SAP, vous ne pouvez pas utiliser les noms d'imprimante SAP
longs dans UC4. Par conséquent, indiquez le nom technique de
quatre caractères.
COPIES=
Nombre de copies
Format : Entier
Valeur par défaut : "0"
Entre ici le nombre désiré de copies de votre document.
LIST_N[AME]=
Nom de la requête spool
Format : Littéral de script
Ce paramètre vous permet d'indiquer le nom de la requête spool. Ce
dernier peut contenir des lettres, des chiffres, des caractères
spéciaux et des espaces dans tous les modes. Le nom proposé par
défaut pour les requêtes spool est composé des huit caractères du
nom du rapport, du séparateur "_" et des trois premiers caractères
du nom de l'utilisateur.
LIST_T[EXT]=
Texte de la page de garde
Format : Littéral de script
Ce paramètre vous permet d'indiquer le texte décrivant la requête
spool. Ce dernier peut contenir des lettres, des chiffres, des
caractères spéciaux et des espaces dans tous les modes.
IMM[EDIATELY]=
Impression Immédiate
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
REL[EASE]=
Supprimer après Impression
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
Ce paramètre permet de déterminer si la requête spool doit être
supprimée dès que le système de sortie a effectué l'impression ou
seulement à l'expiration de la période de rétention.
NEW_LIST_ID=
Nouvelle requête spool
Format : Littéral de script
Valeurs autorisées : "YES" (valeur par défaut) ou "NO"
436
Chapter 4 JCL UC4 pour les applications
Elément de syntaxe
Description/format
EXPIR[ATION]=
Période de Rétention
Format : Entier
Valeur par défaut : "0"
Ce paramètre permet de déterminer le nombre de jours pendant
lequel la requête spool doit être conservée dans le système spool
avant d'être supprimée.
LINE_COUNT=
Longueur des pages de la liste
Format : Entier
Valeur par défaut : "0"
Nombre de lignes par page. Si ce champ contient le chiffre zéro ou
est vide, le nombre de pages de la liste est illimité (non autorisé pour
l'impression). La longueur de la liste est alors uniquement
déterminée par son contenu. Lors de l'impression, le nombre
maximal de lignes par page dépend du format choisi. Pour modifier
le nombre de lignes, vous devez sélectionner un autre format.
LINE_SIZE=
Largeur des lignes de la liste
Format : Entier
Valeur par défaut : "0"
Ce paramètre détermine la largeur actuelle des lignes de la liste.
Lors de l'impression, la largeur maximale des lignes dépend du
format choisi. Pour modifier la largeur des lignes, vous devez
sélectionner un autre format.
LAYOUT=
Préparation à l'impression
Format : Littéral de script
Ce paramètre détermine le format de la sortie de la requête spool.
Concrètement, il définit le format des pages, c'est-à-dire le nombre
maximal de lignes et de colonnes par page imprimée.
COVER[PAGE]=
Sélection de la page de garde
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
Ce paramètre détermine si une page de garde contenant les
sélections de rapports doit figurer avant la liste. Si une page de
garde est générée, elle est également reprise dans le rapport de
Job. Cela permet de documenter les paramètres de cette exécution.
Automation Engine
Elément de syntaxe
Description/format
SAP_COVER[_PAGE]=
Page de garde SAP
Format :
437
Valeurs autorisées : "" (valeur par défaut) et "X" et "D"
"" - Pas d'impression de la page de garde
"X" - Impression de la page de garde
"D" - L'impression de la page de garde dépend du paramétrage de
l'imprimante
Ce paramètre détermine si une page de garde contenant certaines
informations (destinataire, département, format utilisé,...) doit être
jointe à l'impression issue de la requête spool.
OS_COVER[_PAGE]=
Page de garde du spooler de l'hôte
Format : Littéral de script
Valeurs autorisées : "" (valeur par défaut), "X" et "D"
"" - Pas d'impression de la page de garde
"X" - Impression de la page de garde
"D" - L'impression de la page de garde dépend du paramétrage de
l'imprimante
RECEIVER=
Destinataire
Format : Littéral de script
Ce paramètre indique le nom du destinataire de la requête spool. Ce
nom figure sur la page de garde imprimée. Par défaut, le nom du
destinataire est celui de l'utilisateur actuel.
DEPART[MENT]=
Département sur la page de garde
Format : Littéral de script
Ce paramètre indique le nom du département concerné par la
requête spool. Ce nom figure sur la page de garde imprimée.
AUTHORITY=
Autorisation
Format : Littéral de script
Ce paramètre indique l'autorisation qui s'applique à la requête spool
(12 caractères au maximum). Le contenu de la requête spool n'est
visible que pour les utilisateurs qui disposent de l'autorisation
indiquée.
DATA_SET=
Nom du jeu de données spool
Format : Littéral de script
TYPE=
Nom du jeu de données spool
Format : Littéral de script
SPOOL_PRI[ORITY]=
Priorité de la requête spool
Format : Entier
Valeur par défaut : "5"
438
Chapter 4 JCL UC4 pour les applications
Elément de syntaxe
Description/format
TEXTO[NLY]=
Texte seulement
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
Ce paramètre contrôle le mode de sortie des caractères non-ASCII
d'une liste imprimée.
Prérequis d'utilisation du paramètre (voir également la note SAP
777337) :
l
l
FRAMES=
SAP Basis version 6.20 avec le package de support
SAPKB62045
SAP Basis version 6.40 avec le package de support
SAPKB64010
Cadre
Format : Littéral de script
Valeurs autorisées : "YES" (valeur par défaut) et "NO"
Contrôle la mise en cadre par défaut. Ses conditions d'utilisation
sont identiques à celles du paramètre TEXTONLY=.
Paramètres d'archivage
ARCHIVE_M[ODE]=
Mode de sauvegarde
Format : Littéral de script
Valeurs autorisées : "1" (valeur par défaut),"2" et "3"
"1" - Le document est seulement imprimé.
"2" - Le document est seulement sauvegardé dans une archive
optique.
"3" - Le document est imprimé et sauvegardé dans une archive
optique.
ARCHIVE_S[APOBJECT]=
Type de l'objet Business
Format : Littéral de script
Les objets SAP sont classés en fonction de leur type.
Voir : Paramètres d'archivage avec R3_ACTIVATE_REPORT
ARCHIVE_O[BJECT]=
Type de document
Format : Littéral de script
Les objets d'archivage sont classés en fonction du type de
document.
ARCHIVE_I[NFO]=
Zone d'informations
Format : Littéral de script
Abréviation d'information pour la requête d'archivage.
ARCHIVE_T[EXT]=
Champ de texte d'information
Format : Littéral de script
Texte décrivant la requête d'archivage. Ce dernier peut contenir des
lettres, des chiffres, des caractères spéciaux et des espaces dans
tous les modes.
Automation Engine
Elément de syntaxe
439
Description/format
Paramètres de contrôle
MON[ITOR]=
Suivi du statut dans le protocole d'activation
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
Paramètre pour la
Relation parent-enfant
BEG_LOGLINES=
Définit le nombre de lignes qui doivent être reprises depuis le début
du log du Job SAP dans le rapport de Job.
END_LOGLINES=
Nombre de lignes à la fin du log du Job SAP qui sont écrites dans le
rapport de Job.
Si le paramètre END_LOGLINES ou BEG_LOGLINES est indiqué,
l'intégralité du rapport de Job est utilisée par défaut. Si seul un
paramètre est affiché, alors seules les lignes du début ou de la fin
du rapport de Job sont lues.
Si "0" est la valeur indiquée pour les deux paramètres, aucun log de
Job n'est indiqué.
Seules des valeurs numériques sont autorisées pour les deux
paramètres.
GET_SPOOL=
Demander la liste Spool du rapport démarré
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Demander la liste Spool. Celle-ci est enregistrée en tant
que fichier texte dans le répertoire que vous définissez dans le
fichier INI de l'Agent SAP avec le paramètre Download_dir=
(section [GLOBAL]). Le nom de ce fichier se compose de la manière
suivante :
<SAP-Job-Count>_<Numéro d'étape>_<Numéro de Spool>.txt
Ce fichier est en plus enregistré comme résultat de Job dans le Job
UC4.
"NO" = La liste Spool n'est pas demandée
Interface par défaut
[UC4] [Valeur par défaut]
Syntaxe
R3_ACTIVATE_REP[ORT]
REPORT=...
[,VARIANT=...]
[,DESTINATION=...]
440
Chapter 4 JCL UC4 pour les applications
[,COPIES=...]
[,LIST_NAME=...]
[,LIST_TEXT=...]
[,IMMEDIATELY=...]
[,RELEASE=...]
[,NEW_LIST_ID=...]
[,EXPIRATION=...]
[,LINE_COUNT=...]
[,LINE_SIZE=...]
[,LAYOUT=...]
[,COVERPAGE=...]
[,SAP_COVER_PAGE=...]
[,OS_COVER_PAGE=...]
[,RECEIVER=...]
[,DEPARTMENT=...]
[,AUTHORITY=...]
[,DATA_SET=...]
[,TYPE=...]
[,SPOOL_PRIORITY=...]
[,ARCHIVE_MODE=...]
[,ARCHIVE_SAPOBJECT=...]
[,ARCHIVE_OBJECT=...]
[,ARCHIVE_INFO=...]
[,ARCHIVE_TEXT=...]
[,MONITOR=...]
[,WAIT=...]
[,ABORTED=...]
[,REPL[ICATE]=...]
[,BEG_LOGLINES=...]
[,END_LOGLINES=...]
[,GET_SPOOL=...]
Elément de syntaxe
Description/format
REP[ORT]=
Nom du rapport
Format : Littéral de script
VAR[IANT]=
Nom de la variante
Format : Littéral de script
Paramètres d'impression
DEST[INATION]=
Périphérique de sortie
Format : Littéral de script
Ce paramètre permet d'indiquer le nom du système de sortie. Il
s'agit dans la plupart des cas du nom d'une imprimante, mais il peut
également s'agir de celui d'un télécopieur, etc.
Attention : pour des raisons techniques liées à l'interface XBP
de SAP, vous ne pouvez pas utiliser les noms d'imprimante SAP
longs dans UC4. Par conséquent, indiquez le nom technique de
quatre caractères.
Automation Engine
Elément de syntaxe
Description/format
COPIES=
Nombre de copies
Format : Entier
441
Valeur par défaut : "0"
Entre ici le nombre désiré de copies de votre document.
LIST_N[AME]=
Nom de la requête spool
Format : Littéral de script
Ce paramètre vous permet d'indiquer le nom de la requête spool. Ce
dernier peut contenir des lettres, des chiffres, des caractères
spéciaux et des espaces dans tous les modes. Le nom proposé par
défaut pour les requêtes spool est composé des huit caractères du
nom du rapport, du séparateur "_" et des trois premiers caractères
du nom de l'utilisateur.
LIST_T[EXT]=
Texte de la page de garde
Format : Littéral de script
Ce paramètre vous permet d'indiquer le texte décrivant la requête
spool. Ce dernier peut contenir des lettres, des chiffres, des
caractères spéciaux et des espaces dans tous les modes.
IMM[EDIATELY]=
Impression Immédiate
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
REL[EASE]=
Supprimer après Impression
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
Ce paramètre permet de déterminer si la requête spool doit être
supprimée dès que le système de sortie a effectué l'impression ou
seulement à l'expiration de la période de rétention.
NEW_LIST_ID=
Nouvelle requête spool
Format : Littéral de script
Valeurs autorisées : "YES" (valeur par défaut) ou "NO"
EXPIR[ATION]=
Période de Rétention
Format : Entier
Valeur par défaut : "0"
Ce paramètre permet de déterminer le nombre de jours pendant
lequel la requête spool doit être conservée dans le système spool
avant d'être supprimée.
442
Chapter 4 JCL UC4 pour les applications
Elément de syntaxe
Description/format
LINE_COUNT=
Longueur des pages de la liste
Format : Entier
Valeur par défaut : "0"
Nombre de lignes par page. Si ce champ contient le chiffre zéro ou
est vide, le nombre de pages de la liste est illimité (non autorisé
pour l'impression). La longueur de la liste est alors uniquement
déterminée par son contenu. Lors de l'impression, le nombre
maximal de lignes par page dépend du format choisi. Pour modifier
le nombre de lignes, vous devez sélectionner un autre format.
LINE_SIZE=
Largeur des lignes de la liste
Format : Entier
Valeur par défaut : "0"
Ce paramètre détermine la largeur actuelle des lignes de la liste.
Lors de l'impression, la largeur maximale des lignes dépend du
format choisi. Pour modifier la largeur des lignes, vous devez
sélectionner un autre format.
LAYOUT=
Préparation à l'impression
Format : Littéral de script
Ce paramètre détermine le format de la sortie de la requête spool.
Concrètement, il définit le format des pages, c'est-à-dire le nombre
maximal de lignes et de colonnes par page imprimée.
COVER[PAGE]=
Sélection de la page de garde
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
Ce paramètre détermine si une page de garde contenant les
sélections de rapports doit figurer avant la liste. Si une page de
garde est générée, elle est également reprise dans le rapport de
Job. Cela permet de documenter les paramètres de cette
exécution.
SAP_COVER[_PAGE]=
Page de garde SAP
Format :
Valeurs autorisées : "" (valeur par défaut) et "X" et "D"
"" - Pas d'impression de la page de garde
"X" - Impression de la page de garde
"D" - L'impression de la page de garde dépend du paramétrage de
l'imprimante
Ce paramètre détermine si une page de garde contenant certaines
informations (destinataire, département, format utilisé,...) doit être
jointe à l'impression issue de la requête spool.
Automation Engine
Elément de syntaxe
Description/format
OS_COVER[_PAGE]=
Page de garde du spooler de l'hôte
Format : Littéral de script
443
Valeurs autorisées : "" (valeur par défaut), "X" et "D"
"" - Pas d'impression de la page de garde
"X" - Impression de la page de garde
"D" - L'impression de la page de garde dépend du paramétrage de
l'imprimante
RECEIVER=
Destinataire
Format : Littéral de script
Ce paramètre indique le nom du destinataire de la requête spool. Ce
nom figure sur la page de garde imprimée. Par défaut, le nom du
destinataire est celui de l'utilisateur actuel.
DEPART[MENT]=
Département sur la page de garde
Format : Littéral de script
Ce paramètre indique le nom du département concerné par la
requête spool. Ce nom figure sur la page de garde imprimée.
AUTHORITY=
Autorisation
Format : Littéral de script
Ce paramètre indique l'autorisation qui s'applique à la requête spool
(12 caractères au maximum). Le contenu de la requête spool n'est
visible que pour les utilisateurs qui disposent de l'autorisation
indiquée.
DATA_SET=
Nom du jeu de données spool
Format : Littéral de script
TYPE=
Nom du jeu de données spool
Format : Littéral de script
SPOOL_PRI[ORITY]=
Priorité de la requête spool
Format : Entier
Valeur par défaut : "5"
Paramètres d'archivage
ARCHIVE_M[ODE]=
Mode de sauvegarde
Format : Littéral de script
Valeurs autorisées : "1" (valeur par défaut),"2" et "3"
"1" - Le document est seulement imprimé.
"2" - Le document est seulement sauvegardé dans une archive
optique.
"3" - Le document est imprimé et sauvegardé dans une archive
optique.
ARCHIVE_S[APOBJECT]=
Type de l'objet Business
Format : Littéral de script
Les objets SAP sont classés en fonction de leur type.
Voir : Paramètres d'archivage avec R3_ACTIVATE_REPORT
444
Chapter 4 JCL UC4 pour les applications
Elément de syntaxe
Description/format
ARCHIVE_O[BJECT]=
Type de document
Format : Littéral de script
Les objets d'archivage sont classés en fonction du type de
document.
ARCHIVE_I[NFO]=
Zone d'informations
Format : Littéral de script
Abréviation d'information pour la requête d'archivage.
ARCHIVE_T[EXT]=
Champ de texte d'information
Format : Littéral de script
Texte décrivant la requête d'archivage. Ce dernier peut contenir des
lettres, des chiffres, des caractères spéciaux et des espaces dans
tous les modes.
Paramètres de contrôle
MON[ITOR]=
Suivi du statut dans le protocole d'activation
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
Paramètre pour la
Relation parent-enfant
WAIT=
Attente de la fin du processus enfant d'un Job SAP
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Le système attend la fin de tous les processus enfant. Les
processus enfant seront inclus dans le protocole d'activation.
"NO" = Le système n'attend pas la fin de tous les processus enfant.
ABORTED=
Attente de la fin anormale du processus enfant d'un Job SAP
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" (valeur par défaut) et "NO"
"YES" = Le Job SAP (parent) est interrompu. Le Script s'interrompt
et le Job se termine anormalement.
"NO" - Le Job SAP (parent) n'est pas interrompu. Le script se
poursuit et le Job UC4 se termine normalement.
REPL[ICATE]=
Traitement des processus enfant d'un Job
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Les processus enfant d'un Job sont répliqués dans le
système UC4. Ils apparaissent alors dans la Fenêtre d'Activités de
l'Interface Utilisateur. De plus, le système UC4 crée des
statistiques et des rapports.
"NO" - Pas de réplication dans le système UC4.
BEG_LOGLINES=
Définit le nombre de lignes qui doivent être reprises depuis le début
du log du Job SAP dans le rapport de Job.
Automation Engine
445
Elément de syntaxe
Description/format
END_LOGLINES=
Nombre de lignes à la fin du log du Job SAP qui sont écrites dans le
rapport de Job.
Si le paramètre END_LOGLINES ou BEG_LOGLINES est indiqué,
l'intégralité du rapport de Job est utilisée par défaut. Si seul un
paramètre est affiché, alors seules les lignes du début ou de la fin
du rapport de Job sont lues.
Si "0" est la valeur indiquée pour les deux paramètres, aucun log de
Job n'est indiqué.
Seules des valeurs numériques sont autorisées pour les deux
paramètres.
GET_SPOOL=
Demander la liste Spool du rapport démarré
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Demander la liste Spool. Celle-ci est enregistrée en tant
que fichier texte dans le répertoire que vous définissez dans le
fichier INI de l'Agent SAP avec le paramètre Download_dir=
(section [GLOBAL]). Le nom de ce fichier se compose de la
manière suivante :
<SAP-Job-Count>_<Numéro d'étape>_<Numéro de Spool>.txt
Ce fichier est en plus enregistré comme résultat de Job dans le Job
UC4.
"NO" = La liste Spool n'est pas demandée
Si l'élément de script est utilisé à plusieurs reprises dans un Job
SAP et si tous les Steps d'un Job sont regroupés (par l'option
"Combiner les steps d'un Job" dans l'objet Connexion), mais si le
paramètre GET_SPOOL="YES" est uniquement défini pour une
ligne R3_ACTIVE_REPORT, la liste Spool est tout de même
requise pour tous les Jobs enfant.
Les entrées Spool des enfants sont uniquement requises lorsque le
paramètre REPLICATE= est défini soit sur YES, soit sur ALL.
Remarques
Le script permet de modifier un step ABAP. Une fois le Job SAP sélectionné, vous pouvez redéfinir le nom
du rapport, le nom de la variante et divers paramètres d'archivage et d'impression pour un step ABAP.
Les paramètres correspondent aux champs des structures PRI_PARAMS et ARC_PARAMS du
dictionnaire SAP. Pour obtenir des informations plus précises sur chaque champ, utilisez le dictionnaire ou
le navigateur de l'interface BAPI.
A la place d'une Variante, vous pouvez transmettre les critères de sélection avec le Traitement R3_
SET_SELECT_OPTION.
Exemple
R3_ACTIVATE_REPORT REPORT='ZSUSER00',VARIANT='ALL_
USERS',COVERPAGE='YES',DESTINATION='LT77',IMMEDIATELY='YES'
446
Chapter 4 JCL UC4 pour les applications
Rubriques connexes :
Généralités sur le JCL SAP
Exemples
Exécution d'un MBeans
R3_ACTIVATE_SESSIONS
Exécution des sessions batch input.
Transaction : SM35
Interface : UC4
Syntaxe
R3_ACTIVATE_SESSION[S]
NAME=...
[,STATUS=...]
[,NOFOUND=...]
[,ERROR=...]
[,ERRORLEVEL=...]
[,SELECT=...]
[,JOBNAME=...]
[,ORDER_BY=...]
Elément de syntaxe
Description/format
NAME=
Sélection des sessions d'après leur nom (par exemple, "xxx*")
Format : Littéral de script
STATUS=
Sélection des sessions d'après leur statut (par exemple, toutes les sessions
non comptabilisées).
Format : Littéral de script
Valeurs autorisées : "" (valeur par défaut) et "E"
"" - La session doit encore être traitée
"E" - Pas de session.
NOFOUND=
Comportement adopté si les critères de sélection des sessions ne donnent
aucun résultat.
Format : Littéral de script
Valeurs autorisées : "NORMAL" (valeur par défaut), "ABEND".
"NORMAL" - Le script continue, le Job UC4 se termine normalement.
"ABEND" - Le script s'interrompt, le Job UC4 se termine anormalement.
Automation Engine
ERROR=
447
Comportement adopté si une session parmi celles sélectionnées se termine
de façon anormale.
Format : Littéral de script
Valeurs autorisées : "ABEND" (valeur par défaut), "IGNORE".
"ABEND" - Le script s'interrompt, le Job UC4 se termine anormalement.
"IGNORE" - Le script continue, le Job UC4 se termine normalement.
Voir : ERROR/ERRORLEVEL dans R3_ACTIVATE_SESSIONS
ERRORLEVEL=
Indication du pourcentage (%) de transactions incorrectes.
Format : Littéral de script
Valeur par défaut : "101"
Si ce pourcentage est dépassé pour une session, le Job UC4 se termine de
façon anormale.
SELECT=
Sélection unique ou permanente
Format : Littéral de script
Valeurs autorisées : "ONCE" (valeur par défaut) et "EVERY"
"ONCE" - Le nombre de correspondances (= nombre de Sessions à libérer)
est déterminé une seule fois.
"EVERY" - Le nombre de correspondances est déterminé à chaque fois
qu'une Session est libérée. Cette technique permet la mise en parallèle des
sessions lancées.
JOBN[AME]=
Chaque session est exécutée par un Job SAP.
Format : Littéral de script
Valeurs autorisées : "ATTRIBUTE" (valeur par défaut) et "SESSION"
"ATTRIBUTE" = Contenu de la zone de texte "Nom de Job" de
l'Registerkarte Attributs de l'hôte. S'il est vide, un nom de Job standard lui
est donné par UC4
"SESSION" = Nom de la session active.
ORDER[_BY]=
Critère de tri de la sélection de sessions. Tous les noms de champ de la
table SAP APQI peuvent être indiqués. Exemple : ORDER_BY=GROUPID
Ce paramètre est pris en charge dans SAP version 4.6 et supérieure.
R3_ACTIVATE_SESSION[S]
[QID=...]
[,NOFOUND=...]
[,ERROR=...]
[,ERRORLEVEL=...]
[,JOBNAME=...]
Elément de syntaxe
Description/format
QID=
ID de queue identifiant la session batch input de manière univoque.
Format : Littéral de script
Ce paramètre permet de démarrer une session batch input précise.
448
Chapter 4 JCL UC4 pour les applications
NOFOUND=
Comportement adopté si les critères de sélection des sessions ne donnent
aucun résultat.
Format : Littéral de script
Valeurs autorisées : "NORMAL" (valeur par défaut), "ABEND".
"NORMAL" - Le script continue, le Job UC4 se termine normalement.
"ABEND" - Le script s'interrompt, le Job UC4 se termine anormalement.
ERROR=
Comportement adopté si une session parmi celles sélectionnées se termine
de façon anormale.
Format : Littéral de script
Valeurs autorisées : "ABEND" (valeur par défaut), "IGNORE".
"ABEND" - Le script s'interrompt, le Job UC4 se termine anormalement.
"IGNORE" - Le script continue, le Job UC4 se termine normalement.
Voir : ERROR/ERRORLEVEL dans R3_ACTIVATE_SESSIONS
ERRORLEVEL=
Indication du pourcentage (%) de transactions incorrectes.
Format : Littéral de script
Valeur par défaut : "101"
Si ce pourcentage est dépassé pour une session, le Job UC4 se termine de
façon anormale.
JOBN[AME]=
Chaque session est exécutée par un Job SAP.
Format : Littéral de script
Valeurs autorisées : "ATTRIBUTE" (valeur par défaut) et "SESSION"
"ATTRIBUTE" = Contenu de la zone de texte "Nom de Job" de
l'Registerkarte Attributs de l'hôte. S'il est vide, un nom de Job standard lui
est donné par UC4
"SESSION" = Nom de la session active.
Description
Les sessions batch input à démarrer peuvent être déterminées par le biais d'une sélection. Vous avez
également la possibilité de démarrer une session batch input unique à l'aide du paramètre QID=. Pour
trouver l'ID de queue d'une session batch input particulière, reportez-vous au résultat de la sélection de
R3_GET_SESSIONS, enregistré dans l'état d'activation ou dans un fichier.
Le paramètre ORDER_BY permet d'ordonner le traitement des sessions batch input en fonction d'un
critère donné.
Exemples
Exécuter toutes les sessions non traitées, dont le nom est "Fl*". Le Job se termine de façon anormale si
des transactions incorrectes sont détectées.
R3_ACTIVATE_SESSIONS
NAME='FI*',STATUS=,NOFOUND='NORMAL',ERROR='ABEND',ERRORLEVEL=0
Dans le second exemple, la session batch input dont l'ID de queue a été indiqué en tant que paramètre est
démarrée.
R3_ACTIVATE_SESSION QID='20020318171302022315'
Automation Engine
449
Rubriques connexes :
Généralités sur le JCL SAP
R3_CALL_TRANSACTION
Exécute une transaction SAP.
Transaction : Interface : UC4
Syntaxe
R3_CALL_TRANS[ACTION]
CODE=...
[,UPDATE=...]
[,RACOMMIT=...]
[,NOBINPT=...]
Elément de syntaxe
Description/format
CODE=
Code transaction, 20 caractères
Format : Littéral de script
UPDATE=
Mode comptabilité de la transaction
Format : Littéral de script
Valeurs autorisées : "A", "L" et "S" (valeur par défaut)
"A" - Asynchrone
"L" - Local
"S" - Synchrone
RACOMMIT=
Fin de la transaction par Commit Work
Format : Littéral de script
Valeurs autorisées : "" (valeur par défaut) et "X"
"" - La transaction se poursuit jusqu'à la fin prévue.
"X" - La transaction prend fin dans SAP, dès que le Script ABAP COMMIT
WORK est atteint.
NOBINPT=
Traitement en mode Batch-Input
Format : Littéral de script
Valeurs autorisées : "" (valeur par défaut) et "X"
"" - La transaction est traitée en mode BDC.
"X" - La transaction est traitée dans SAP de la même manière que si elle était
démarrée par un Utilisateur Dialogue.
Remarques
Le Script exécute une transaction SAP. Les données requises pour la transaction ont été au préalable
définies à l'aide de R3_SET_BDCDATA.
450
Chapter 4 JCL UC4 pour les applications
Pour des raisons de sécurité, la transaction n'est pas exécutée avec les droits de l'Utilisateur RFC
(CPIC), utilisés par défaut par UC4 pour se connecter à SAP et pour planifier des Jobs d'arrière-plan. Pour
démarrer la transaction, l'Agent se déconnecte du système SAP et se reconnecte à l'aide de l'ID utilisateur
défini dans l'objet Login du Job UC4. Nous vous recommandons de créer dans SAP un Utilisateur dédié à
l'exécution des transactions à partir de UC4. Cet Utilisateur doit disposer d'autorisations sur les
transactions.
Il est également judicieux d'utiliser les Scripts R3_SET_BDCDATA et R3_CALL_TRANSACTION dans
des Jobs UC4 réservés à cet usage. Vous évitez ainsi que l'Utilisateur défini pour R3_CALL_
TRANSACTION influence d'autres Scripts du JCL SAP, comme R3_ACTIVATE_REPORT.
Exemple
Dans l'exemple, les données BDC de la transaction "SA38" sont définies. La transaction "SA38" est
ensuite exécutée pour mettre à jour les données.
R3_SET_BDCDATA PROGRAM="SAPMS38M", DYNPRO="0101", DYBEGIN="X"
R3_SET_BDCDATA FNAM="BDC_OKCODE", FVAL="=SSET"
R3_SET_BDCDATA FNAM="RS38M-PROGRAMM", FVAL="RSEINB00"
R3_SET_BDCDATA PROGRAM="SAPLSVAR", DYNPRO="0302", DYBEGIN="X"
R3_SET_BDCDATA FNAM="BDC_OKCODE", FVAL="=CHNG"
R3_SET_BDCDATA FNAM="RSVAR-VARIANT", FVAL="UM-V1"
R3_SET_BDCDATA FNAM="RSVAR-FLAG1", FVAL="X"
R3_SET_BDCDATA PROGRAM="RSEINB00", DYNPRO="1000", DYBEGIN="X"
R3_SET_BDCDATA FNAM="BDC_OKCODE", FVAL="=SAVE"
R3_SET_BDCDATA FNAM="P_FILE", FVAL="test.txt"
R3_SET_BDCDATA PROGRAM="RSEINB00", DYNPRO="1000", DYBEGIN="X"
R3_SET_BDCDATA FNAM="BDC_OKCODE", FVAL="=VBAC"
R3_SET_BDCDATA PROGRAM="SAPLSVAR", DYNPRO="0302", DYBEGIN="X"
R3_SET_BDCDATA FNAM="BDC_OKCODE", FVAL="/EBACK"
R3_SET_BDCDATA PROGRAM="SAPMS38M", DYNPRO="0101", DYBEGIN="X"
R3_SET_BDCDATA FNAM="BDC_OKCODE", FVAL="=BACK"
R3_CALL_TRANSACTION CODE="SA38", UPDATE="S"
Rubriques connexes :
Généralités sur le JCL SAP
R3_COPY_VARIANT
Copie la variante d'un rapport.
Transaction : SA38
Interface : UC4 et Standard
Syntaxe
R3_COPY_VARIANT
REP[ORT]=...
,S[OURCE]=...
,T[ARGET]=...
[,DELAY=...]
[,MODE=...]
[,OVERWRITE=...]
Automation Engine
Elément de syntaxe
Description/format
REP[ORT]=
Nom du rapport dont la variante doit être supprimée.
Format : Littéral de script
S[OURCE]=
Nom de la variante source
Format : Littéral de script
T[ARGET]=
Nom de la variante cible
Format : Littéral de script
DELAY=
Durée en secondes pendant laquelle l'Agent attend la copie
d'une variante.
Format : Littéral de script
Interface
UC4
nécessaire
Valeur par défaut : "0"
Ce paramètre sert à contourner les problèmes de
synchronisation (variante copiée introuvable) susceptibles
d'être rencontrés par les systèmes SAP comportant de
nombreux Serveurs d'applications.
MODE=
Mode de traitement
Format : Littéral de script
Valeurs autorisées : " " (valeur par défaut) et "C"
"" - Copie de la variante en dupliquant les entrées de table.
"C" : création de la variante avec une référence par le biais
des interfaces internes SAP.
Si une variante de système doit être copiée, saisissez le
paramètre MODE=C. La copie de la variante n'est pas
automatiquement insérée dans un ordre de transfert.
Le paramètre n'est pas nécessaire à l'interface standard.
OVERWRITE=
Comportement adopté si la variante existe déjà.
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" - La variante cible est écrasée.
"NO" - La variante cible n'est pas écrasée.
Attention : lors de l'utilisation de l'interface XBP3.0, les options "Protéger la variante" et "Seulement
pour le traitement en arrière-plan" ne doivent pas être reprises lors du processus de copie et la Variante
copiée doit être visible pour tous les Utilisateurs (Batch et dialogue) !
Exemple
La variante "DAILY" du rapport "RSPO0041" est copiée en tant que variante "DAILYCOP".
R3_COPY_VARIANT REPORT='RSPO0041',SOURCE='DAILY',TARGET='DAILYCOP'
Rubriques connexes :
Généralités sur le JCL SAP
451
452
Chapter 4 JCL UC4 pour les applications
R3_CREATE_OUTPUT_REQUEST
Crée un nouvel ordre d'édition pour une requête spool existante.
Transaction : SP01
Interface : UC4
Syntaxe
R3_CREATE_OUTPUT_REQ[UEST]
SPOOLNR=...
[,DESTINATION=...]
[,RECEIVER=...]
[,DEPARTMENT=...]
[,COPIES=...]
[,SPOOL_PRIORITY=...]
[,TITLE=...]
[,PAGE_FROM=...]
[,PAGE_TO=...]
[,ERROR=...]
Elément de syntaxe
Description/format
SPOOLNR=
Numéro de la requête Spool
Format de la valeur : Littéral de script
DEST[INATION]=
Imprimante
Format de la valeur : Littéral de script
RECEIVER=
Destinataire
Format de la valeur : Littéral de script
DEPART[MENT]=
Département
Format de la valeur : Littéral de script
COPIES=
Nombre de copies
Format de la valeur : Nombre
Valeur par défaut : "0"
SPOOL_PRI[ORITY]=
Priorité du Spool
Format de la valeur : littéral de Script ou nombre
Valeur par défaut : "0"
TITLE=
Titre du Spool
Format de la valeur : Littéral de script
PAGE_FROM=
Page de début
Format de la valeur : Nombre
Valeur par défaut : "0"
PAGE_TO=
Page de fin
Format de la valeur : Nombre
Valeur par défaut : "0"
Automation Engine
ERROR=
453
Comportement adopté si une erreur survient.
Format de la valeur : Littéral de script
Valeurs autorisées : "NORMAL" et "INTERROMP" (valeur par défaut)
"NORMAL" = Le Job UC4 se poursuit.
"INTERROMP" - Le Job UC4 se termine anormalement.
Exemple
R3_CREATE_OUTPUT_REQUEST
SPOOLNR='1234',DESTINATION='PRNT',RECEIVER='MEIER',DEPARTMENT='UC4',COPIES=
1,TITLE='Analyse décembre'
Rubriques connexes :
Généralités sur le JCL SAP
R3_CREATE_VARIANT
Crée une nouvelle variante.
Transaction : SA38
Interface : Standard
Syntaxe
R3_CREATE_VAR[IANT]
REP[ORT]=...
,VAR[IANT]=...
[,TEXT=...]
[,PROTECTED=...]
Elément de syntaxe
Description/format
REP[ORT]=
Nom du rapport
Format : Littéral de script
VAR[IANT]=
Nom de la variante.
Format : Littéral de script
TEXT=
Forme résumée de la variante.
Format : Littéral de script
Ce texte est créé dans la langue de l'Agent, définie dans le fichier INI par
l'administrateur UC4, ou dans celle du Job. Cette dernière remplace l'option
figurant dans le fichier INI.
Si vous n'indiquez pas ce paramètre, le nom de la variante est utilisé dans
sa forme résumée.
454
Chapter 4 JCL UC4 pour les applications
PROTECTED=
Protection contre les modifications.
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" - Seul l'utilisateur CPIC peut modifier la variante créée.
"NO" - La variante peut être modifiée sans restriction.
Remarques
Lors de la création de la variante, UC4 indique automatiquement qu'elle est destinée au traitement en
arrière-plan. Les autres propriétés de la variante sont définies comme dans la GUI SAP.
La fonction R3_CREATE_VARIANT crée toujours une variante sans contenu. Utilisez R3_SET_
SELECT_OPTION pour préciser le contenu. Si vous souhaitez exécuter un rapport avec une nouvelle
variante, respectez l'ordre suivant lors de l'appel des fonctions :
1. R3_SET_SELECT_OPTION - Définition des critères de sélection
2. R3_CREATE_VARIANT - Création de la variante
3. R3_ACTIVATE_REPORT - Exécution du rapport avec la variante
Si la variante existe déjà, mais qu'elle doit être recréée, supprimez-la au préalable à l'aide de la fonction
R3_DELETE_VARIANT.
Le Job est interrompu si une erreur survient lors de la création de la variante.
Le Client de la variante est automatiquement celui auquel l'Agent SAP s'est connecté (conformément aux
informations de l'objet Login). Vous pouvez également créer des variantes système SAP (CUS& et
SAP&). Dans ce cas, le Client de la variante est toujours automatiquement défini sur 000.
Pour utiliser R3_CREATE_VARIANT, XBP version 2.0 ou supérieure est nécessaire (version
SAP 4.6+).
Exemple
L'exemple définit la valeur "17" pour le paramètre "Age minimum". Le critère de sélection est ensuite utilisé
pour créer une variante.
R3_SET_SELECT_OPTION SELNAME='MIN_ALT',KIND='P',LOW='17',SIGN='I'
R3_CREATE_VARIANT REP=REPORT01,VAR=NEW,TEXT='Nouvelle variante'
Rubriques connexes :
Généralités sur le JCL SAP
R3_DEACTIVATE_CM_PROFILE
Désactive un profil dans le Gestionnaire de critères SAP.
Transaction : SM62
Interface : Standard
Syntaxe
R3_DEACTIVATE_CM_PROFILE
Automation Engine
455
TYPE=...
[,ERROR=...]
Elément de syntaxe
Description/format
TYPE=
Type du profil
Format : Littéral de script
Valeurs autorisées : "EVHIRO", "EVTHIS" et "INTERC"
"EVHIRO" - Réorganisation de l'Historique des Evènements
"EVTHIS" - Historique des Evènements
"INTERC" - Interception de Job
ERROR=
Comportement adopté si le profil ne peut être désactivé.
Format de la valeur : Littéral de script
Valeurs autorisées : "ABEND" (valeur par défaut), "IGNORE".
"ABEND" - Le Script est interrompu et le Job UC4 se termine de façon
anormale.
"IGNORE" - Le Script se poursuit et le Job UC4 se termine normalement.
Remarques
Un seul profil peut être activé par type de profil. C'est pour cela que vous n'avez pas besoin d'entrer les ID,
mais seulement le Type.
Exemple
L'exemple désactive le profil actif pour l'Historique des Evènements.
R3_DEACTIVATE_CM_PROFILE TYPE="EVTHIS"
Rubriques connexes :
Généralités sur le JCL SAP
R3_DELETE_NODE
Supprime un nœud de l'architecture de moniteur SAP.
Transaction : RZ20
Interface : XMW
Syntaxe
R3_DELETE_NODE
NODE=...
Elément de syntaxe
Description/format
NODE=
Nom du nœud
Format de la valeur : Littéral de script
456
Chapter 4 JCL UC4 pour les applications
Remarques
Le Script supprime un nœud existant (nœud d'attribut, d'objet, de total ou de contexte). Si le nœud
possède encore des Alertes en cours, ces dernières sont fermées avant la suppression.
Format du paramètre NODE=
Ce paramètre décrit un chemin complet. Chacun des éléments est séparé par une barre oblique "/".
Le chemin commence toujours par un nœud de contexte. Peuvent suivre un nœud de total, d'objet et
d'attribut.
Les nœuds de contexte, d'objet et d'attribut ne doivent apparaître qu'une seule fois dans le chemin. En
revanche, les nœuds de total peuvent apparaître plusieurs fois.
Exemple 1 :
"UC4/TestNode/PerfAttributUC4"
l
l
l
"UC4" - Nom de contexte
"TestNode" - Noeud d'objet
"PerfAttributUC4" - Noeud d'attribut
Exemple 2 :
"UC4/Summary1/Summary2/TestNode/PerfAttributUC4"
l
l
l
l
l
"UC4" - Nom de contexte
"Summary1" - Noeud de total
"Summary2" - Noeud de total
"TestNode" - Noeud d'objet
"PerfAttributUC4" - Noeud d'attribut
Exemple
Une fois l'exemple suivant exécuté, le nœud "UC4/TEST" existe encore. Le sous-nœud
"PerfAttributUC4" a été supprimé.
R3_DELETE_NODE NODE='UC4/TEST/PerfAttributUC4'
Rubriques connexes :
Généralités sur le JCL SAP
R3_DELETE_VARIANT
Supprime la variante d'un rapport.
Transaction : SA38
Interface : UC4 et Standard
Syntaxe
R3_DELETE_VARIANT
Automation Engine
REP[ORT]=...
,VAR[IANT]=...
Elément de syntaxe
Description/format
REP[ORT]=
Nom du rapport dont la variante doit être supprimée.
Format : Littéral de script
VAR[IANT]=
Nom de la variante qui doit être supprimée.
Format : Littéral de script
Exemple
Dans cet exemple, la variante "DAILYCOP" du rapport "RSPO0041" est supprimée.
R3_DELETE_VARIANT REPORT='RSPO0041',VAR='DAILYCOP'
Rubriques connexes :
Généralités sur le JCL SAP
R3_GET_APPLICATIONLOG
Vérifie le code retour d'application d'une ou de plusieurs étapes de Job.
Transaction : Interface : Standard (XBP 3,0)
Syntaxe
R3_GET_APPLICATIONLOG
NAME=...
,JOBCOUNT=...
[,STEP=...]
[,MAX_APPL_RC=...]
Elément de
syntaxe
Description/format
NAME=
Nom du Job SAP
Format de la valeur : Littéral de script
Par défaut, le Job SAP que vous avez précédemment indiqué dans un des éléments
de script suivants est utilisé :
l
l
l
l
R3_ACTIVATE_INTERCEPTED_JOBS
R3_ACTIVATE_JOBS
R3_ACTIVATE_REPORT
R3_ACTIVATE_SESSION
457
458
Chapter 4 JCL UC4 pour les applications
JOBCOUNT=
Numéro du Job SAP
Format : Littéral de script
Utilisé conjointement avec NAME=, ce paramètre permet d'identifier un Job SAP de
manière univoque.
STEP=
Numéro du step dans le Job SAP
Format de la valeur : Nombre
Valeur par défaut : "1"
Si vous indiquez la valeur "0", les codes retour d'application de toutes les étapes du
Job SAP indiqué sont vérifiés.
MAX_APPL_
RC=
Nombre maximum de codes retour autorisés
Format de la valeur : Nombre
Valeur par défaut : "0"
Le Job UC4 s'interrompt si le code retour d'application d'une étape de Job dépasse
la valeur indiquée ici.
Remarques
Le Script vérifie les codes retour d'application des étapes du Job et les compare avec la valeur maximale
autorisée. Si cette valeur est dépassée, le Job UC4 est interrompu. Si ce n'est pas le cas, l'exécution du
Job se poursuit.
Le code retour d'application est également affiché dans le rapport et peut être lu.
Exemple
Dans un premier exemple, le code retour d'application de l'étape "2" est vérifié.
R3_GET_APPLICATION_RC NAME="MYJOB",JOBCOUNT=13541601,STEP=2,MAX_APPL_RC=10
Le second exemple illustre la façon dont tous les codes retour d'application du Job "MYJOB" sont vérifiés.
R3_GET_APPLICATION_RC NAME="MYJOB",JOBCOUNT=13541601,STEP=0,MAX_APPL_RC=10
Rubriques connexes :
Généralités sur le JCL SAP
R3_GET_APPLICATIONLOG
Cherche les messages du log d'application (transaction SLG1) et les affiche dans le rapport ou le fichier.
Transaction : SLG1
Interface : UC4
Syntaxe
R3_GET_APPLICATIONLOG
Automation Engine
459
[OBJECT=...]
[,SUBOBJECT=...]
[,FROM_DATE=...]
[,FROM_TIME=...]
[,TO_DATE=...]
[,TO_TIME=...]
[,USER=...]
[,TAC=...]
[,PROGRAM=...]
[,MESSAGE_CLASS=...]
[,FILE=...]
[,EXTNUMBER=...]
[,LOG_CREATION=...]
[,ENCODING=...]
Elément de syntaxe
Description/format
OBJ[ECT]=
Nom d'un objet (abréviation de l'application)
Format : Littéral de script
Valeur par défaut : "*"
"*" peut être utilisé comme caractère générique pour désigner n'importe quelle
chaîne de caractères.
SUB[OBJECT]=
Nom d'un sous-objet de l'objet
Format : Littéral de script
Valeur par défaut : "*"
"*" peut être utilisé comme caractère générique pour désigner n'importe quelle
chaîne de caractères.
FROM_D[ATE]=
Date de début de la sélection des messages au format "AAAAMMJJ".
Format : Littéral de script
Valeur par défaut : "20010101"
FROM_T[IME]=
Heure de début de la sélection des messages au format "HHMMSS".
Format : Littéral de script
Valeur par défaut : "000000"
TO_D[ATE]=
Date de fin de la sélection des messages au format "AAAAMMJJ".
Format : Littéral de script
Valeur par défaut : date actuelle
TO_T[IME]=
Heure de fin de la sélection des messages au format "HHMMSS".
Format : Littéral de script
Valeur par défaut : "235959"
USER=
Nom de l'Utilisateur qui a déclenché l'Evènement journalisé.
Format : Littéral de script
Valeur par défaut : "*"
"*" peut être utilisé comme caractère générique pour désigner n'importe quelle
chaîne de caractères.
460
Chapter 4 JCL UC4 pour les applications
TAC=
Nom de la transaction associée au déclenchement de l'Evènement journalisé.
Format : Littéral de script
Valeur par défaut : "*"
"*" peut être utilisé comme caractère générique pour désigner n'importe quelle
chaîne de caractères.
PROGRAM=
Nom du programme qui a déclenché l'Evènement journalisé.
Format : Littéral de script
Valeur par défaut : "*"
"*" peut être utilisé comme caractère générique pour désigner n'importe quelle
chaîne de caractères.
MESSAGE_CL[ASS]= Indicateur précisant l'appartenance d'un message à une classe de problèmes.
Format : Littéral de script
Valeur par défaut : "4"
Les valeurs des indicateurs des messages vont de "1" (très important) à "4"
(informations complémentaires).
FILE=
Nom du fichier dans lequel le résultat (messages trouvés) doit être enregistré
Format : Littéral de script
Le résultat de la sélection n'est pas affiché dans le rapport si ce paramètre est
utilisé.
EXTNUMBER=
Identification externe du fichier de logging de l'application, attribuée par le
programme d'application
Format : Littéral de script
LOG_C[REATION]=
Mode d'exploitation dans lequel le log d'application a été créé
Format : littéral de script
Valeurs autorisées : "" (valeur par défaut), "B", "D" et "I"
"" - tous les modes
"B" - Batch "D" - Dialogue
"I" - Batch-Input ENCODING=
Codage pour le fichier en sortie créé (paramètre FILE=).
Exemple : UTF-8
Valeur par défaut : ISO-8859-1
Si un codage non pris en charge ou un codage non valide est indiqué, cela
entraîne l'interruption du Job avec un message d'erreur correspondant.
Dans les formes SAP, un assistant de saisie qui répertorie tous les codages
pris en charge est disponible pour ce champ.
Remarques
Le Script permet de sélectionner des messages dans le log d'application, en fonction de critères
spécifiques. Par défaut, les messages trouvés sont affichés dans le rapport UC4. Ils peuvent également
être écrits dans le fichier indiqué par le biais du paramètre FILE=.
Automation Engine
461
Le Script permet, par exemple, d'accéder au log d'application de SAP Banking - Accounts Management.
Les messages des processus et des réseaux de processus démarrés à l'aide de BCA_ACTIVATE_
PROCESS sont ainsi exploitables dans UC4.
Les paramètres du Script doivent être utilisés de manière à toujours fournir l'accès à un nombre limité
de messages du log d'application. Une sélection rigoureuse des critères appropriés permet d'éviter de
grands volumes de données inutiles.
Veuillez noter que les fichiers générés sont enregistrés par défaut sur l'ordinateur sur lequel l'agent est
installé (par ex. : R3_GET_JOB_SPOOL; FILE=).
Rubriques connexes :
Généralités sur le JCL SAP
R3_GET_EVENT
Attend un Evènement déclenché dans SAP.
Transaction : SM36 (conditions de démarrage)
Interface : Standard
Syntaxe
R3_GET_EVENT
ID=...
[,PARAM=...]
[,TIMEOUT=...]
Elément de syntaxe
Description/format
ID=
Nom de l'Evènement
Format : Littéral de script
Le nom indiqué doit comporter moins de 32 caractères.
PARAM=
Paramètre de l'Evènement.
Format : Littéral de script
Le nom indiqué doit comporter moins de 64 caractères.
TIMEOUT=
Durée en secondes pendant laquelle un Evènement déclenché dans SAP doit
être attendu.
Format : Nombre
Valeur par défaut : "0"
Remarques
Le Script permet d'attendre un Evènement qui a été déclenché dans SAP. Il peut s'agir d'un Evènement
système (prédéfini par SAP) ou Utilisateur. Vous pouvez indiquer comme paramètre d'Evènement une
chaîne de caractères au contenu libre. Si la durée en secondes pendant laquelle un Evènement doit être
attendu est définie sur zéro, le Script attend indéfiniment l'Evènement.
Le Script se poursuit dès que l'Evènement survient.
462
Chapter 4 JCL UC4 pour les applications
Veuillez noter que le Script ne peut réagir que lorsque l'évènement indiqué se trouve aussi dans
l'historique des évènements SAP. Pour cela, adaptez éventuellement les profils de critères des
évènements dans SAP.
Exemple
Dans l'exemple, l'Evènement "TEST" présentant le paramètre "Myparam" est attendu 10 secondes au
maximum.
R3_GET_EVENT ID="TEST",PARAM="Myparam",TIMEOUT=10
Rubriques connexes :
Généralités sur le JCL SAP
R3_GET_INTERCEPTION
Lit la table de filtre pour les Jobs interceptés et enregistre dans le protocole d'activation ou un fichier.
Transaction : Interface : Standard (XBP 2.0)
Syntaxe
R3_GET_INTERC[EPTION]
[FILE=]
[,ENCODING=...]
Elément de
syntaxe
Description/format
FILE=
Nom du fichier dans lequel les Jobs doivent être enregistrés.
Format de la valeur : Littéral de script
Le résultat n'est pas affiché dans le protocole d'activation si ce paramètre est utilisé.
ENCODING= Codage pour le fichier en sortie créé (paramètre FILE=).
Exemple : UTF-8
Valeur par défaut : ISO-8859-1
Si un codage non pris en charge ou un codage non valide est indiqué, cela entraîne
l'interruption du Job avec un message d'erreur correspondant.
Dans les formes SAP, un assistant de saisie qui répertorie tous les codages pris en
charge est disponible pour ce champ.
Remarques
Le Script lit le contenu de la table du système SAP dans laquelle les conditions des Jobs batch ont été
définies. Le Client SAP indiqué dans l'objet Login auquel le Job UC4 se réfère est utilisé.
Automation Engine
463
Le contenu de la table est écrit dans le protocole d'activation ou dans le fichier indiqué. Le fichier est
présenté de manière structurée. La première colonne (4 caractères) contient le Client SAP, la deuxième
(33 caractères), le nom du Job et la troisième (12 caractères), le nom de l'Utilisateur.
Les fichiers générés sont enregistrés par défaut sur l'ordinateur sur lequel l'agent est installé (par ex. :
R3_GET_JOB_SPOOL; FILE=).
Attention : le Script est uniquement pris en charge par la version XBP 2.0.
Exemple
Les Jobs interceptés définis sont extraits et écrits dans un fichier.
R3_GET_INTERCEPTION FILE='C:\TEMP\IC.TXT'
Rubriques connexes :
Généralités sur le JCL SAP
R3_GET_JOB_SPOOL
Lit la liste spool d'un step de type "programme ABAP".
Transaction : SM37
Interface : UC4 et Standard
Syntaxe
R3_GET_JOB_SPOOL
FILE=...
[,NAME=...]
[,JOBCOUNT=...]
[,STEP=...]
[,NOFOUND=...]
[,MAXLINES=...]
[,SPOOLNR=...]
[,FORMAT=...]
[,PAGES=...]
[,FILTER=...]
[,RAW=...]
[,ENCODING=...]
Elément de syntaxe
Description/format
FILE=
Nom du fichier dans lequel le résultat (liste spool du step) doit être écrit.
Format de la valeur : Littéral de script
De plus, ce fichier est enregistré en tant que Résultat de Job pour le job
UC4.
464
Chapter 4 JCL UC4 pour les applications
Elément de syntaxe
Description/format
NAME=
Nom du Job SAP qui contient le step
Format de la valeur : Littéral de script
Si vous n'indiquez pas de nom de Job, le dernier Job effectué via le Job
UC4 est automatiquement utilisé.
JOBCOUNT=
Numéro du Job SAP qui contient le step
Format de la valeur : Littéral de script
Si le numéro du Job n'est pas indiqué, la dernière valeur du Job qui s'est
déroulée via le Job UC4 est automatiquement utilisée.
Lors de l'utilisation des paramètres NAME et JOBCOUNT, veuillez
noter que le Spool ne peut pas être déterminé lorsque le Job
correspondant a été supprimé dans le système SAP (paramètre
"Supprimer le Job après exécution dans CCMS" dans le Job UC4).
STEP=
Numéro du step dans le Job SAP
Format de la valeur : Nombre
Valeur par défaut : "1"
NOFOUND=
Comportement adopté si la liste spool n'est pas trouvée
Format de la valeur : Littéral de script
Valeurs autorisées : "NORMAL" (valeur par défaut), "ABEND".
"NORMAL" = Le Job UC4 se poursuit.
"ABEND" - Le Job UC4 se termine anormalement.
MAXLINES=
Nombre maximal de lignes écrites dans le fichier
Format de la valeur : Nombre
Valeur par défaut : "9999"
Ce paramètre n'est pas pris en compte lors de l'utilisation de
FORMAT = "PDF" ou "BIN".
SPOOLNR=
Numéro de la requête spool
Format de la valeur : Littéral de script
Si NAME, JOBCOUNT ou SPOOLNR est saisi, le dernier Job SAP
qui a été effectué via le Job UC4 est automatiquement utilisé.
FORMAT=
Format de sortie
Format de la valeur : Littéral de script
Valeurs autorisées : "TXT" (valeur par défaut), "RAW" (au lieu de
paramètre RAW), "PDF", "BIN" et "HTM"
Pour les paramètres "BIN" et "PDF", la liste Spool est transférée au
format binaire sans être convertie.
Automation Engine
Elément de syntaxe
Description/format
PAGES=
Pages
Format de la valeur : Littéral de script
Syntaxe du paramètre : PAGES=Page[;Page[;...]]
Vous devez séparer les pages et les plages de pages indiquées par le
signe ";".
Exemples :
l
l
l
page 7 : PAGES="7"
pages 5 à 7 : PAGES="5,7"
page 2 et pages 5 à 7 : PAGES="2;5,7"
Pour indiquer la dernière page, vous pouvez utiliser le symbole $ :
l
l
l
l
pages 1 à 3 et dernière page : PAGES="1,3;$"
toutes les pages : PAGES="1,$"
la première et la dernière page : PAGES="1;$"
les deux dernières pages : PAGES="$-1,$"
Les paramètres FORMAT (sauf PDF), SPOOLNR et PAGES sont
aussi disponibles pour l'interface XBP 3.0 (à partir de la version 1.1).
FILTER=
Paramètre de Filtre
Format de la valeur : Littéral de script
Chaîne de caractères utilisée pour effectuer la sélection. Il n'est pas
possible de saisir des caractères génériques.
RAW=
Ce paramètre fournit la liste spool au format brut.
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" - la liste spool est fournie au format brut, c'est-à-dire avec tous
les caractères d'édition.
"NO" - la liste spool n'est pas au format brut.
Il est recommandé d'utiliser FORMAT=RAW au lieu de ce
paramètre.
ENCODING=
Codage pour le fichier en sortie créé (paramètre FILE=).
Exemple : UTF-8
Valeur par défaut : ISO-8859-1
Si un codage non pris en charge ou un codage non valide est indiqué,
cela entraîne l'interruption du Job avec un message d'erreur
correspondant.
Dans les formes SAP, un assistant de saisie qui répertorie tous les
codages pris en charge est disponible pour ce champ.
Remarques
Le script peut être utilisé avec les combinaisons de paramètres suivantes :
465
466
Chapter 4 JCL UC4 pour les applications
l
l
l
l
l
SPOOLNR
NAME, JOBCOUNT, STEP
NAME, JOBCOUNT
STEP
aucun de ces paramètres
Le paramètre FILTER nécessite l'interface UC4 et le paramètre RAW nécessite l'interface par défaut !
Le transfert de la liste spool n'est possible que si vous n'avez pas coché la case "Supprimer le Job après
exécution dans CCMS" dans l'onglet "Attributs de l'hôte". Cette limitation n'est pas valable lorsque le
paramètre SPOOLNR est indiqué ou qu'il est utilisé comme interface par défaut XBP 3.0 (à partir de la
version 1.1) sans paramètre NAME, JOBCOUNT et SPOOLNR.
Veuillez tenir compte de la remarque suivante lors de l'utilisation de l'interface par défaut avec une version
inférieure à XBP 3.0 V1.1 :
C'est toujours l'intégralité de la liste Spool qui est transférée à l'Agent SAP. La fonction par défaut de
l'interface XBP ne permet pas d'accéder seulement à des parties de la liste Spool. Attention : les listes
spool volumineuses peuvent nuire aux performances de l'Agent SAP. Le paramètre MAXLINES= est
seulement pris en compte si la liste spool a déjà été transférée dans son intégralité.
Veuillez noter que les fichiers générés sont enregistrés par défaut sur l'ordinateur sur lequel l'Agent est
installé (par ex. R3_GET_JOB_SPOOL; FILE=).
Exemple
Dans l'exemple, un rapport est activé au préalable. Ensuite, la liste spool du step est cherchée sans
indiquer le nom de Job ou le numéro de Job comme paramètre. Le dernier Job qui a été démarré via le Job
UC4 est automatiquement utilisé.
R3_ACTIVATE_REPORT REPORT='RSPO0041',VAR='STANDARD',COVERPAGE=YES
R3_GET_JOB_SPOOL FILE='c:\temp\spoollist.txt',NOFOUND=ABEND,MAXLINES=20
Rubriques connexes :
Généralités sur le JCL SAP
R3_GET_JOBLOG
Cherche le logging d'un Job SAP dans SAP et l'affiche dans un rapport.
Transaction : SM37
Interface : UC4 et Standard
Syntaxe
R3_GET_JOBLOG
NAME=...
,JOBCOUNT=...
[,BEG_LOGLINES=...]
[,END_LOGLINES=...]
Elément de syntaxe
Description/format
Automation Engine
NAME=
Nom du Job SAP
Format : Littéral de script
JOBCOUNT=
Numéro du Job SAP.
Format : Littéral de script
467
Utilisé conjointement avec le nom, ce paramètre permet d'identifier un Job
SAP de manière univoque.
BEG_LOGLINES=
Définit le nombre de lignes qui doivent être reprises depuis le début du log du
Job SAP dans le rapport de Job.
END_LOGLINES=
Nombre de lignes à la fin du log du Job SAP qui sont écrites dans le rapport de
Job.
Si le paramètre END_LOGLINES ou BEG_LOGLINES est indiqué,
l'intégralité du rapport de Job est utilisée par défaut. Si seul un paramètre est
affiché, alors seules les lignes du début ou de la fin du rapport de Job sont
lues.
Si "0" est la valeur indiquée pour les deux paramètres, aucun log de Job n'est
indiqué.
Seules des valeurs numériques sont autorisées pour les deux paramètres.
Remarques
Le Script permet de déterminer le log d'un Job SAP déjà exécuté qui n'a pas été directement démarré
via UC4. Il est ainsi possible d'accéder à des logs de sous-Jobs IS-U ou SARA. Vous pouvez consulter le
log du Job dans l'onglet "Rapport" du Job UC4 que le Script utilise.
Le Script ne lit que le log d'un seul Job SAP. Vous ne pouvez pas utiliser de caractères génériques lors de
l'indication des paramètres.
Exemple
Dans l'exemple, le log du Job "SWWERRE" (numéro "23483501") est déterminé.
R3_GET_JOBLOG NAME='SWWERRE',JOBCOUNT=23483501
Le rapport contient les lignes suivantes.
Date
Time MsgId/Nr Message
11.12.2001 00:08:35 00 516 SJob a été démarré
11.12.2001 00:08:35 00 550 SStep 001 démarré (Programme RSWWERRE, Variante
, Nom d'utilisateur NI)
11.12.2001 00:08:35 WI 137 S0 Workitems ont été traités
11.12.2001 00:08:35 00 517 SJob s'est terminé
Rubriques connexes :
Généralités sur le JCL SAP
R3_GET_JOBS
Sélectionne des Jobs SAP et affiche le résultat dans le rapport d'activation ou dans un fichier.
Transaction : SM37
468
Chapter 4 JCL UC4 pour les applications
Interface : UC4 et Standard
Syntaxe
R3_GET_JOB[S]
NAME=...
[,JOBCOUNT=...]
[,GROUP=...]
[,USER=...]
[,START_D[ATE]=...]
[,START_T[IME]=...]
[,END_D[ATE]=...]
[,END_TIME=...]
[,NO_DATE=...]
[,WITH_PRED=...]
[,EVENT_ID=...]
[,EVENT_PARM=...]
[,PRELIM=...]
[,SCHEDUL=...]
[,READY=...]
[,RUNNING=...]
[,FINISHED=...]
[,ABORTED=...]
[,NOFOUND=...]
[,FILE=...]
[,ENCODING=...]
Elément de syntaxe
Description/format
NAME=
Sélection d'un ou de plusieurs Jobs d'après leur nom.
Format : Littéral de script ou Nom UC4
Utilisé conjointement avec le numéro du Job, ce paramètre permet d'identifier
un Job SAP de manière univoque. Pour sélectionner plusieurs Jobs, vous
pouvez utiliser le caractère générique "*" (par exemple, "xxx*").
Paramètres
Critères de sélection supplémentaires, sous la forme d'un mot-clé auquel est
attribuée une valeur.
Si vous ne précisez pas de valeur pour un paramètre, une valeur par défaut lui
est affectée. Les formats indiqués s'appliquent à la valeur attribuée au motclé.
JOBCOUNT=
Numéro du Job SAP
Format: Littéral de script
Utilisé conjointement avec le nom, ce paramètre permet d'identifier un Job
SAP de manière univoque.
GROUP=
Sélection des Jobs en fonction de leurs Groupes (par exemple, "xxx*")
Format : Littéral de script ou Nom UC4
Valeur par défaut : "*" Automation Engine
USER=
Sélection des Jobs en fonction de leurs Utilisateurs (par exemple, "xxx*")
Format : Littéral de script ou Nom UC4
Valeur par défaut : "*" START_D[ATE]=
Date de début planifiée pour l'exécution du Job.
Format : Littéral de script ou Nom UC4
Format de date : AAAAMMJJ
Valeur par défaut : "20010101"
START_T[IME]=
Heure de début planifiée pour l'exécution du Job.
Format : Littéral de script ou Nom UC4
Format d'heure : HHMMSS
Valeur par défaut : "000000"
END_D[ATE]=
Date de fin planifiée pour l'exécution du Job.
Format : Littéral de script ou Nom UC4
Format de date : AAAAMMJJ
Valeur par défaut : date actuelle
END_TIME=
Heure de fin planifiée pour l'exécution du Job.
Format : Littéral de script ou Nom UC4
Format d'heure : HHMMSS
Valeur par défaut : "235959"
NO_DATE=
Jobs sans condition de démarrage.
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "" (valeur par défaut) ou "X"
WITH_PRED=
Jobs avec une condition de démarrage "avec prédécesseur"
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "" (valeur par défaut) ou "X"
EVENT_ID=
Jobs liés à un Evènement : Nom de l'évènement
Format : Littéral de script ou Nom UC4
EVENT_PARM=
Jobs liés à un Evènement : Paramètre de l'Evènement
Format : Littéral de script ou Nom UC4
PRELIM=
Jobs présentant le statut "Planifié"
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "" (valeur par défaut) ou "X"
SCHEDUL=
Jobs présentant le statut "Déclenché"
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "" (valeur par défaut) ou "X"
READY=
Jobs présentant le statut "Prêt"
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "" (valeur par défaut) ou "X"
RUNNING=
Jobs présentant le statut "Actif"
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "" (valeur par défaut) ou "X"
469
470
Chapter 4 JCL UC4 pour les applications
FINISHED=
Jobs présentant le statut "Terminé"
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "" (valeur par défaut) ou "X"
ABORTED=
Jobs présentant le statut "Interrompu"
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "" (valeur par défaut) ou "X"
NOFOUND=
Comportement adopté si les critères de sélection des Jobs ne donnent aucun
résultat.
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "NORMAL" (valeur par défaut), "ABEND".
"NORMAL" - Le script continue, le Job UC4 se termine normalement.
"ABEND" - Le script s'interrompt, le Job UC4 se termine anormalement.
FILE=
Nom du fichier dans lequel le résultat (Jobs SAP trouvés) doit être enregistré
Format : Littéral de script
Le résultat de la sélection n'est pas affiché dans le rapport d'activation si ce
paramètre est utilisé.
ENCODING=
Codage pour le fichier en sortie créé (paramètre FILE=).
Exemple : UTF-8
Valeur par défaut : ISO-8859-1
Si un codage non pris en charge ou un codage non valide est indiqué, cela
entraîne l'interruption du Job avec un message d'erreur correspondant.
Dans les formes SAP, un assistant de saisie qui répertorie tous les codages
pris en charge est disponible pour ce champ.
Description
Le Script permet de sélectionner des Jobs d'arrière-plan dans SAP. Les critères de sélection sont transmis
en tant que paramètres. Les paramètres correspondent aux champs de la structure BAPIXMJSEL du
dictionnaire SAP. Pour obtenir des informations plus précises sur chaque champ, utilisez le dictionnaire ou
le navigateur de l'interface BAPI.
Le résultat de la sélection est écrit dans le rapport d'activation ou dans un fichier. Chaque Job SAP trouvé
correspond à une ligne. Les lignes ne sont pas présentées de la même manière dans le rapport d'activation
et dans le fichier.
Le fichier utilise des colonnes. La première ligne du fichier contient des informations sur la largeur et le
contenu de ces colonnes. Chaque ligne est divisée en fonction de ce paramétrage. Les 33 premiers
caractères correspondent au nom du Job SAP, les 9 suivants à son numéro.
Dans le rapport d'activation, les informations de chaque ligne sont séparées par un point-virgule. Un
horodatage et un numéro de message UC4 figurent en outre en début de ligne.
Vous pouvez analyser le résultat de la sélection à l'aide de fonctions de Script. Utilisez la fonction PREP_
PROCESS_REPORT dans l'onglet "Post Traitement" pour analyser le rapport d'activation. La fonction
PREP_PROCESS_FILE est quant à elle employée si le résultat de la sélection a été enregistré dans un
fichier.
Automation Engine
471
Veuillez noter que les fichiers générés sont enregistrés par défaut sur l'ordinateur sur lequel l'Agent est
installé (par ex. R3_GET_JOB_SPOOL; FILE=).
Exemples
Dans le premier exemple, tous les Jobs SAP planifiés dont le nom commence par "LANC" sont
sélectionnés.
R3_GET_JOBS NAME="FREIG*",PRELIM="X"
Le résultat est affiché dans le rapport d'activation et pourrait se présenter comme les lignes ci-dessous :
20000922/134303.567
20000922/134303.567
20000922/134303.567
20000922/134303.567
20000922/134303.567
-
U2004943
U2004943
U2004943
U2004943
U2004943
;LIBERATION;13450801
;LIBERATION;13455501
;LIBERATION;16221501
;LIBERATION;16225101
;LIBERATION;16234801
Le second exemple sélectionne tous les Jobs SAP nommés "EU_REORG" et présentant le statut
"Terminé". Le résultat de la sélection est enregistré dans un fichier.
R3_GET_JOBS NAME='EU_REORG',FINISHED='X',FILE='Jobs.txt'
Exemples de lignes susceptibles de figurer en début de fichier :
COL=LENGTH,LENGTH_TAB='33=JOBNAME,9=JOBCOUNT'
EU_REORG
01404301
EU_REORG
01405401
Rubriques connexes :
Généralités sur le JCL SAP
R3_GET_MONITOR
Lit des données d'un moniteur SAP.
Transaction : RZ20
Interface : Standard
Syntaxe
R3_GET_MON[ITOR]
MONITOR_SET=...
,MONITOR=...
,FILE=...
[,ENCODING=...]
Elément de syntaxe
Description/format
MONITOR_SET=
Nom du paramètre moniteur (60 caractères maximum).
Format : nom ou Littéral de script
MONITOR=
Nom d'un moniteur (60 caractères maximum)
Format : nom ou Littéral de script
472
Chapter 4 JCL UC4 pour les applications
FILE=
Nom du fichier dans lequel le résultat (données actuelles du moniteur) doit
être enregistré
Format : nom ou Littéral de script
ENCODING=
Codage pour le fichier en sortie créé (paramètre FILE=).
Exemple : UTF-8
Valeur par défaut : ISO-8859-1
Si un codage non pris en charge ou un codage non valide est indiqué, cela
entraîne l'interruption du Job avec un message d'erreur correspondant.
Dans les formes SAP, un assistant de saisie qui répertorie tous les codages
pris en charge est disponible pour ce champ.
Remarques
Le Script permet de lire les données de SAP Monitoring et de les enregistrer dans un fichier.
L'Agent SAP répartit les diverses lignes fournies par le moniteur SAP dans des colonnes fixes. Il
enregistre le nom et la largeur des colonnes sous la forme d'une ligne d'en-tête dans le fichier contenant les
données actuelles du moniteur. Les colonnes suivantes sont disponibles :
PATH - Chemin de la 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.
MESSAGE - Message affiché pour un attribut de protocole.
Attention : l'horodatage retourné est indiqué en UTC et diffère donc de l'heure locale ! Le Script CONV_
TIMESTAMP permet d'appliquer un autre Fuseau horaire à la date et à l'heure (voir PREP_PROCESS).
Nous souhaitons attirer tout particulièrement votre attention sur le fait que vous pouvez préparer et éditer
les données du moniteur avec les Scripts applicables aux séquences de données. Dans ce cas, R3_GET_
MONITOR est utilisé dans le Job d'Evènement "EVENT.R3MONITOR" du Client "00". La fonction de
Script PREP_PROCESS permet alors de générer une séquence de données avec les données d'un
moniteur SAP.
La séquence de données est traitée par les instructions de Script :PROCESS et :ENDPROCESS. Grâce
à l'utilisation conjointe de la fonction de Script GET_PROCESS_LINE , vous accédez à toutes les lignes
de la séquence de données et à ses colonnes.
Veuillez noter que les fichiers générés sont enregistrés par défaut sur l'ordinateur sur lequel l'Agent est
installé (par ex. R3_GET_JOB_SPOOL; FILE=).
Rubriques connexes :
Généralités sur le JCL SAP
R3_GET_SESSIONS
Sélectionne des dossiers batch input et affiche le résultat dans le rapport d'activation ou dans un fichier.
Transaction : SM35
Automation Engine
473
Interface : UC4
Syntaxe
R3_GET_SESSION[S]
NAME=...
CREDATE_FROM=...
CREDATE_TO=...
STATUS=...
[,FILE=...]
[,NOFOUND=...]
[,ORDER_BY=...]
[,ENCODING=...]
Elément de syntaxe
Description/format
NAME=
Sélection de sessions batch input d'après leur nom
Format : Littéral de script
Vous pouvez utiliser les caractères génériques "*" et "?". "*" signifie n'importe
quelle chaîne de caractères et "?" exactement un caractère.
CREDATE_FROM= Sélection de sessions batch input d'après leur date de création (date de début
de la sélection)
Format : Littéral de Script
Format de date : AAAAMMJJ
CREDATE_TO= Sélection de sessions batch input d'après leur date de création (date de fin de
la sélection)
Format : Littéral de Script
Format de date : AAAAMMJJ
STATUS=
Sélection de sessions batch input d'après leur statut
Format : Littéral de script
Valeurs autorisées : " " (valeur par défaut), "R", "F" et "E"
" " – Sessions batch input qui doivent encore être traitées.
"R" – Sessions batch input qui sont en cours de traitement (Running).
"F" – Sessions batch input dont le traitement est terminé (Finished).
"E" – Sessions batch input pour lesquelles des erreurs sont survenues au
cours du traitement (Error).
FILE=
Nom du fichier dans lequel le résultat de la sélection (sessions batch input
trouvées) doit être écrit.
Format : Littéral de script
Le résultat de la sélection n'est pas affiché dans le rapport d'activation si ce
paramètre est utilisé.
NOFOUND=
Comportement adopté si aucune session batch input n'est trouvée.
Format de la valeur : Littéral de script
Valeurs autorisées : "NORMAL" (valeur par défaut), "ABEND".
"NORMAL" – Le Script continue, le Job UC4 se termine normalement.
"ABEND" – Le Script s'interrompt, le Job UC4 se termine anormalement.
474
Chapter 4 JCL UC4 pour les applications
ORDER_BY=
Critère de tri de la sélection de sessions. Tous les noms de champ de la
table SAP APQI peuvent être indiqués. Exemple : ORDER_BY=GROUPID
Ce paramètre est pris en charge dans SAP version 4.6 et supérieure.
ENCODING=
Codage pour le fichier en sortie créé (paramètre FILE=).
Exemple : UTF-8
Valeur par défaut : ISO-8859-1
Si un codage non pris en charge ou un codage non valide est indiqué, cela
entraîne l'interruption du Job avec un message d'erreur correspondant.
Dans les formes SAP, un assistant de saisie qui répertorie tous les codages
pris en charge est disponible pour ce champ.
Description
Le résultat de la sélection est écrit dans le rapport d'activation ou dans un fichier. Chaque session batch
input trouvée correspond à une ligne. Les lignes ne sont pas présentées de la même manière dans le
rapport d'activation et dans le fichier.
Le fichier utilise des colonnes. La première ligne du fichier contient des informations sur la largeur et le
contenu de ces colonnes. Chaque ligne est divisée en fonction de ce paramétrage. Les 13 premiers
caractères correspondent au nom de la session batch input, les 21 suivants, à l'ID de queue. Treize
caractères supplémentaires indiquent l'Utilisateur qui a créé la session batch input.
Le paramètre ORDER_BY permet de trier les sessions batch input en fonction d'un critère donné.
Dans le rapport d'activation, les informations de chaque ligne sont séparées par un point-virgule. Un
horodatage et un numéro de message UC4 figurent en outre en début de ligne.
Vous pouvez analyser le résultat de la sélection à l'aide de fonctions de Script. Utilisez la fonction PREP_
PROCESS_REPORT dans l'onglet "Post Traitement" pour analyser le rapport d'activation. La fonction
PREP_PROCESS_FILE est quant à elle employée si le résultat de la sélection a été enregistré dans un
fichier.
Dans UC4 version 2.63E, le créateur des sessions batch input est indiqué à la fin des lignes du rapport
d'activation ou du fichier. Cela peut poser un problème dans les Scripts UC4 existants si la séquence de
données générée avec PREP_PROCESS_* n'est pas divisée en colonnes. C'est par exemple le cas si
l'intégralité de la ligne est traitée à l'aide de fonctions de chaînes de caractères.
Veuillez noter que les fichiers générés sont enregistrés par défaut sur l'ordinateur sur lequel l'Agent est
installé (par ex. R3_GET_JOB_SPOOL; FILE=).
Exemples
Dans le premier exemple, sont sélectionnées toutes les sessions batch input nommées "NI" qui restent à
traiter à ce jour.
:SET &AUJOURDHUI# = SYS_DATE(AAAAMMJJ)
R3_GET_SESSIONS NAME='NI',CREDATE_FROM='&AUJOURDHUI#',CREDATE_
TO='&AUJOURDHUI#',STATUS=" "
Exemples de lignes dans le rapport d'activation :
20020313/135601.000 – U2004943 ;UC4_TEST;20020312NI;NI
Automation Engine
Le second exemple sélectionne toutes les sessions batch input créées entre le 01.01.2000 et le
01.01.2002 dont le traitement a fait l'objet d'erreurs. Le résultat de la sélection est enregistré dans un
fichier.
R3_GET_SESSIONS NAME='*',CREDATE_FROM='20000101',CREDATE_
TO='20020101',STATUS='E',FILE='sessions.txt'
Exemples de lignes susceptibles de figurer en début de fichier :
COL=LENGTH,LENGTH_TAB='13=GROUPID,21=QID,13=CREATOR'
UC4_TEST
20020314095728031322 NI
UC4_TEST
20020314095823023148 NI
UC4_TEST
20020314100932031323 NI
Rubriques connexes :
Généralités sur le JCL SAP
R3_GET_SPOOLREQUESTS
Sélectionne des requêtes spool avec des Filtres prédéfinis.
Transaction : SP01
Interface : UC4
Syntaxe
R3_GET_SPOOLREQ[UESTS]
[WITHOUT=...]
[,PROCESSING=...]
[,SUCCESSFUL=...]
[,PROBLEM=...]
[,OWNER=...]
[,AUTHORITY=...]
[,NAME=...]
[,SUFFIX1=...]
[,SUFFIX2=...]
[,DESTINATION=...]
[,SPOOLNR_FROM=...]
[,SPOOLNR_TO=...]
[,CREDATE_FROM=...]
[,CREDATE_TO=...]
[,TITLE=...]
[,RECEIVER=...]
[,DEPARTMENT=...]
[,NOFOUND=...]
Elément de syntaxe
Description/format
475
476
Chapter 4 JCL UC4 pour les applications
WITHOUT=
Sélection en fonction du statut de requête "sans"
Format de la valeur : Littéral de script
Valeurs autorisées : "Y" (valeur par défaut) et "N"
"Y" - la sélection est exécutée
"N" - aucune sélection n'est exécutée en fonction du statut de requête "sans".
PROCESSING=
Sélection en fonction du statut de requête "en cours"
Format de la valeur : Littéral de script
Valeurs autorisées : "Y" (valeur par défaut) et "N"
"Y" - la sélection est exécutée
"N" - aucune sélection n'est exécutée en fonction du statut de requête "en
cours".
SUCCESSFUL=
Sélection en fonction du statut de requête "bien terminé"
Format de la valeur : Littéral de script
Valeurs autorisées : "Y" (valeur par défaut) et "N"
"Y" - la sélection est exécutée
"N" - aucune sélection n'est exécutée en fonction du statut de requête "bien
terminé".
PROBLEM=
Sélection en fonction du statut de requête "problème"
Format de la valeur : Littéral de script
Valeurs autorisées : "Y" (valeur par défaut) et "N"
"Y" - la sélection est exécutée
"N" - aucune sélection n'est exécutée en fonction du statut de requête
"problème".
OWNER=
Propriétaire de la requête Spool
Format de la valeur : Littéral de script
AUTHORITY=
Autorisation spool
Format de la valeur : Littéral de script
NAME=
Nom de la requête Spool
Format de la valeur : Littéral de script
SUFFIX1=
Suffixe 1 de la requête Spool
Format de la valeur : Littéral de script
SUFFIX2=
Suffixe 2 de la requête Spool
Format de la valeur : Littéral de script
DEST[INATION]=
Imprimante
Format de la valeur : Littéral de script
SPOOLNR_FROM=
à partir du numéro de spool
Format de la valeur : Littéral de script
SPOOLNR_TO=
jusqu'au numéro de spool
Format de la valeur : Littéral de script
CREDATE_FROM= Date de création de la requête Spool (date de début)
Format de la valeur : Littéral de script
Format : "AAAAMMJJ"
Valeur par défaut : "20010101"
Automation Engine
CREDATE_TO= Date de création de la requête Spool (date de fin)
Format de la valeur : Littéral de script
Format : "AAAAMMJJ"
Valeur par défaut : date actuelle
TITLE=
Titre de la requête Spool
Format de la valeur : Littéral de script
RECEIVER=
Destinataire de la liste Spool
Format de la valeur : Littéral de script
DEPART[MENT]=
Destinataire de la liste Spool (Département)
Format de la valeur : Littéral de script
NOFOUND=
Comportement adopté si aucune requête Spool n'est trouvée.
Format de la valeur : Littéral de script
Valeurs autorisées : "NORMAL" (valeur par défaut), "ABEND".
"NORMAL" = Le Job UC4 se poursuit.
"ABEND" - Le Job UC4 se termine anormalement.
Description
La fonction insère un ";" au début de chaque ligne de rapport.
Exemple
R3_GET_SPOOLREQUESTS SPOOLNR_FROM='1234',SPOOLNR_
TO='1236',DESTINATION='PRNT',RECEIVER='HENRI'
Rubriques connexes :
Généralités sur le JCL SAP
R3_GET_SYSTEMLOG
Lit les informations d'une période donnée d'un logging système SAP.
Transaction : SM21
Interface : Standard
Syntaxe
R3_GET_SYSTEMLOG
FILE=...
[,SERVER=...]
[,FROM_DATE=...]
[,FROM_TIME=...]
[,TO_DATE=...]
[,TO_TIME=...]
[,ENCODING=...]
477
478
Chapter 4 JCL UC4 pour les applications
Elément de syntaxe
Description/format
FILE=
Nom du fichier dans lequel le log du système SAP lu doit être enregistré.
Format : nom ou Littéral de script
SERVER= Nom d'un Serveur d'applications SAP
Format : nom ou Littéral de script
Le nom d'un Serveur d'applications SAP doit être saisi sous la forme Hôte_
SID_SYSNR :
Hôte = Nom de l'ordinateur
SID = ID système de SAP
SYSNR = Numéro de l'instance SAP
FROM_DATE= Date de début de la sélection dans un log système.
Format : AAAAMMJJ
Valeur par défaut : "20010101"
FROM_TIME= Heure de début de la sélection dans un log système.
Format : HHMMSS
Valeur par défaut : "000000"
TO_DATE= Date de fin de la sélection dans un log système.
Format : AAAAMMJJ
Valeur par défaut : date actuelle
TO_TIME= Heure de fin de la sélection dans un log système.
Format : HHMMSS
Valeur par défaut : "235959"
ENCODING=
Codage pour le fichier en sortie créé (paramètre FILE=).
Exemple : UTF-8
Valeur par défaut : ISO-8859-1
Si un codage non pris en charge ou un codage non valide est indiqué, cela
entraîne l'interruption du Job avec un message d'erreur correspondant.
Dans les formes SAP, un assistant de saisie qui répertorie tous les codages
pris en charge est disponible pour ce champ.
Remarques
Le Script permet de lire le log d'un système SAP et de les enregistrer dans un fichier. Si le nom d'un
Serveur d'applications est indiqué, le Script fournit ce log système. Si le nom du Serveur d'applications
n'est pas indiqué, le log du système SAP central est lu.
Nous souhaitons attirer tout particulièrement votre attention sur le fait que vous pouvez préparer et éditer le
log du système avec les Scripts applicables aux séquences de données. Dans ce cas, R3_GET_
SYSTEMLOG est utilisé dans le Job d'Evènement "EVENT.R3SYSLOG" du Client "00". La fonction de
Script PREP_PROCESS permet alors de générer une séquence de données avec les données du log du
système.
La séquence de données est traitée par les instructions de Script :PROCESS et :ENDPROCESS. Grâce
à l'utilisation conjointe de la fonction de Script GET_PROCESS_LINE , vous accédez à toutes les lignes
de la séquence de données et à ses colonnes.
Automation Engine
479
Veuillez noter que les fichiers générés sont enregistrés par défaut sur l'ordinateur sur lequel l'Agent est
installé (par ex. R3_GET_JOB_SPOOL; FILE=).
Exemple
Par exemple, le log du système central SAP de la semaine précédente est lu. La date de début de la
sélection dans le log du système est calculée avec la fonction de Script SUB_DAYS. On prend en compte
la date du jour.
:RSET &HEUTE#
= SYS_DATE ('JJJJMMTT')
:RSET&LETZTE_WOCHE# =SUB_DAYS ('JJJJMMTT:&HEUTE#', 7)
R3_GET_SYSTEMLOG FILE = 'c:\t46_systemlog.txt', SERVER=, FROM_
DATE='&LETZTE_WOCHE#'
Rubriques connexes :
Généralités sur le JCL SAP
R3_GET_VARIANTS
Affiche toutes les variantes disponibles dans le protocole d'activation.
Transaction : SA38
Interface : Standard
Syntaxe
R3_GET_VARIANT[S]
REPORT=...
[,ERROR=...]
[,SELECT_OPTION=...]
Elément de syntaxe
Description/format
REP[ORT]=
Nom du programme ABAP
Format : Littéral de script
ERROR=
Comportement si aucune variante n'est trouvée.
Format : Littéral de script
Valeurs autorisées : "ABEND" (valeur par défaut), "IGNORE".
"ABEND" - Le script s'interrompt, le Job UC4 se termine anormalement.
"IGNORE" - Le script continue, le Job UC4 se termine normalement.
SEL[ECT_OPTION]=
Type des variantes à sélectionner.
Format : Littéral de script
Valeurs autorisées : "A" (valeur par défaut) et "B"
"A" = Variantes autorisées pour le traitement en arrière-plan et en mode
Dialogue.
"B" = Variantes seulement autorisées pour le traitement en arrière-plan.
480
Chapter 4 JCL UC4 pour les applications
Exemple
R3_GET_VARIANTS REP='RSPO0041'
Rubriques connexes :
Généralités sur le JCL SAP
R3_GET_VARIANT_CONTENTS
Affiche le contenu d'une variante.
Transaction : SA38
Interface : UC4 et Standard (XBP 2.0)
Syntaxe
R3_GET_VARIANT_C[ONTENTS]
REPORT=...
,VARIANT=...
[,SELNAME=...]
[,KIND=...]
[,LOW=...]
[,HIGH=...]
[,SIGN=...]
[,OPTION=...]
[,ERROR=...]
Elément de syntaxe
Description/format
REP[ORT]=
Nom du rapport
Format : Littéral de script ou Nom UC4
VAR[IANT]=
Nom de la variante
Format : Littéral de script ou Nom UC4
SELN[AME]=
Nom du paramètre
Format : Littéral de script ou Nom UC4
KIND=
Type de sélection
Format : Littéral de script ou Nom UC4
Valeurs possibles : "S" et "P" (valeur par défaut)
"S" - critère de sélection
"P" - paramètre
LOW=
Valeur du paramètre (LOW)
Format : Littéral de script ou Nom UC4
HIGH=
Valeur du paramètre (HIGH)
Format : Littéral de script ou Nom UC4
Automation Engine
SIGN=
481
Indicateur (Include/Exclude).
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "I" (valeur par défaut) et "E"
"I" = Include
"E" = Exclude
OPTION=
Option utilisée pour effectuer la sélection
Format : Littéral de script ou Nom UC4
"EQ" - égal (valeur par défaut)
"NE" - non égal à
"GT" - plus grand que
"GE" - plus grand ou égal
"LT" -plus petit que
"LE" - plus petit ou égal
"CP" - contient un modèle (avec des caractères de remplacement)
"NP" - ne contient pas de modèle
"BT" - Intervalle (saisir aussi HIGH)
"NB" - hors de l'intervalle (saisir aussi HIGH)
ERROR=
Comportement adopté si la variante ou le contenu est introuvable
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "ABEND" (valeur par défaut), "IGNORE".
"INTERROMP" - Le Script s'interrompt, le Job UC4 se termine anormalement.
"IGNORER" - Le Script continue, le Job UC4 se termine normalement.
Exemples
Le contenu global de la variante s'affiche ligne par ligne. Le Job ne s'interrompt pas même si la variante est
introuvable.
R3_GET_VARIANT_C REP='RSPO0041',VAR='STANDARD',ERROR='IGNORE'
Toutes les entrées figurant dans la table VARI_VALUES ou VALUETAB et dont la colonne SELNAME
contient la valeur "MIN_ALT" sont répertoriées. Le Job s'interrompt si la valeur "MIN_ALT" ou la variante
est introuvable.
R3_GET_VARIANT_C REP='RSPO0041',VAR='STANDARD',SELNAME='MIN_
ALT',ERROR='ABEND'
Toutes les entrées figurant dans la table VARI_VALUES ou VALUETAB et dont les colonnes SELNAME,
KIND et LOW contiennent les valeurs MIN_ALT, P et 10 sont affichées. Le Job s'interrompt si aucune
correspondance n'est trouvée.
R3_GET_VARIANT_C REP='RSPO0041',VAR='STANDARD',SELNAME='MIN_
ALT',KIND='P',LOW='10',ERROR='ABEND'
Rubriques connexes :
Généralités sur le JCL SAP
R3_MODIFY_INTERCEPTION
Modifie la table de filtre pour les Jobs interceptés.
482
Chapter 4 JCL UC4 pour les applications
Transaction : Interface : Standard (XBP 2,0)
Syntaxe
R3_MODIFY_INTERC[EPTION]
[,NAME=...]
[,USER=...]
[,MODE=...]
Elément de
syntaxe
Description/format
NAME=
Nom d'un Job SAP (ou de plusieurs Jobs SAP si le caractère générique * est utilisé)
Format de la valeur : Littéral de script
Valeur par défaut : "*"
USER=
Nom d'un Utilisateur SAP (ou de plusieurs Utilisateurs SAP si le caractère
générique * est utilisé)
Format de la valeur : Littéral de script
Valeur par défaut : "*"
MODE=
Mode de traitement des nouvelles entrées de tableau.
Format de la valeur : Littéral de script
Valeurs autorisées : "REPLACE" (valeur par défaut) et "APPEND"
"REPLACE" - La nouvelle entrée de tableau remplace les entrées de tableau
existantes.
"INTERROMP" - La nouvelle entrée de tableau est ajoutée aux entrées de tableau
existantes.
Remarques
Le Script modifie le contenu de la table du système SAP dans laquelle les conditions des Jobs batch ont
été définies. Le Client SAP indiqué dans l'objet Login auquel le Job UC4 se réfère est utilisé.
Si MODE=REPLACE dans le Script, toutes les entrées de table du Client SAP sont supprimées et
remplacées par la nouvelle entrée. Si MODE=APPEND, la nouvelle entrée de table est ajoutée aux
entrées existantes du Client SAP.
Attention : le Script est uniquement pris en charge par la version XBP 2.0.
Exemple
Dans l'exemple, tous les Jobs interceptés définis sont d'abord déterminés.
R3_GET_INTERCEPTION
Le protocole d'activation contient les lignes suivantes.
20030325/153054.000 - U2004943 ;001;IC*;*
20030325/153054.000 - U2004943 ;001;UC4*;UC4.WG
Automation Engine
483
Toutes les entrées de table sont ensuite remplacées par une nouvelle entrée et les Jobs interceptés définis
sont de nouveau extraits.
R3_MODIFY_INTERCEPTION NAME='UC4*',USER='UC4.WG'
R3_GET_INTERCEPTION
Le protocole d'activation ne contient plus qu'une seule ligne.
20030325/153054.000 - U2004943 ;001;UC4*;UC4.WG
Rubriques connexes :
Généralités sur le JCL SAP
R3_MODIFY_JOB
Modifie un step ABAP.
Transaction : SM37
Interface : Standard
Syntaxe
R3_MODIFY_JOB
NAME=...
, JOBCOUNT=...
, STEP=...
, REPORT=...
[,VAR[IANT]=...]
[,ARCHIVE_O[BJECT]= ...]
[,ARCHIVE_S[APOBJECT]=...]
[,ARCHIVE_I[NFO]=...]
[,DEST[INATION]=...]
[,IMM[EDIATELY]=...]
[,REL[EASE]=...]
[,COPIES=...]
[,ARCIVE_M[ODE]=...]
[,AUTHORITY=...]
[,SAP_COVER[_PAGE]=...]
[,COVER[PAGE]=...]
[,EXPIR[ATION]=...]
[,RECEIVER=...]
[,LINE_COUNT=...]
[,LINE_SIZE=...]
Elément de syntaxe
Description/format
NAME=
Nom du Job SAP
Format : Littéral de script ou Nom UC4
Utilisé conjointement avec le numéro du Job, ce paramètre permet d'identifier
le Job SAP de manière univoque.
484
Chapter 4 JCL UC4 pour les applications
JOBCOUNT=
Numéro du Job SAP
Format: Littéral de script
Utilisé conjointement avec le nom, ce paramètre permet d'identifier un Job
SAP de manière univoque.
STEP=
Numéro de l'étape ABAP qui doit être modifiée
Format : nombre sans guillemets
RE[PORT]=
Nom du rapport
Format : Littéral de script ou Nom UC4
Paramètres
VAR[IANT]=
Nom de la variante
Format : Littéral de script ou Nom UC4
ARCHIVE_O[BJECT]
=
Paramètres d'archivage : Type de document de l'objet Archive
Format : Littéral de script ou Nom UC4
ARCHIVE_S
[APOBJECT]=
Paramètres d'archivage : Type d'objet de l'objet SAP
Format : Littéral de script ou Nom UC4
ARCHIVE_I[NFO]=
Paramètres d'archivage : Zone d'informations
Format : Littéral de script ou Nom UC4
DEST[INATION]=
Paramètres d'impression : Périphérique de sortie
Format : Littéral de script ou Nom UC4
IMM[EDIATELY]=
Paramètres d'impression : Impression Immédiate
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
REL[EASE]=
Paramètres d'impression : Supprimer après Impression
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
COPIES=
Paramètres d'impression : Nombre de copies
Format : nombre sans guillemets
Valeur par défaut : "0"
ARCHIVE_M[ODE]=
Paramètres d'impression : Mode d'archivage
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "1" (valeur par défaut),"2" et "3"
"1" - Seulement imprimer
"2" - Seulement archiver
"3" - Imprimer et archiver
AUTHORITY=
Paramètres d'impression : Autorisation
Format : Littéral de script ou Nom UC4
SAP_COVER[_PAGE] Paramètres d'impression : Page de Garde SAP
=
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "" (valeur par défaut), "X" et "D"
"" - Pas d'impression de la page de garde
"X" - Impression de la page de garde
"D" - L'impression de la page de garde dépend du paramétrage de
l'imprimante
Automation Engine
COVER[PAGE]=
485
Paramètres d'impression : Sélection de la Page de Garde SAP
Format : Littéral de script ou Nom UC4
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" - Imprimer la sélection de la Page de Garde
"NO" = Ne pas imprimer la sélection de la Page de Garde
EXPIR[ATION]=
Paramètres d'impression : Période de Rétention
Format : nombre sans guillemets
Valeur par défaut : "0"
RECEIVER=
Paramètres d'impression : Destinataire
Format : Littéral de script ou Nom UC4
LINE_COUNT=
Paramètres d'impression : Nombre de lignes de liste
Format : nombre sans guillemets
Valeur par défaut : "0"
LINE_SIZE=
Paramètres d'impression : Largeur des lignes de la liste
Format : nombre sans guillemets
Valeur par défaut : "0"
Description
Le script permet de modifier un step ABAP. Une fois le Job SAP sélectionné, vous pouvez redéfinir le nom
du rapport, le nom de la variante et divers paramètres d'archivage et d'impression pour un step ABAP.
Les paramètres correspondent aux champs des structures PRI_PARAMS et ARC_PARAMS du
dictionnaire SAP. Pour obtenir des informations plus précises sur chaque champ, utilisez le dictionnaire ou
le navigateur de l'interface BAPI.
Exemple
Dans l'exemple, le Job SAP nommé "MYJOB" dont le numéro est "13541601" est modifié. "RSM04000"
est saisi comme step "2" comme programme ABAP exécutable.
R3_MODIFY_JOB NAME="MYJOB",JOBCOUNT=13541601,STEP=2,REPORT=RSM04000
Rubriques connexes :
Généralités sur le JCL SAP
R3_MODIFY_VARIANT
Modifie une entrée dans une variante.
Transaction : SA38
Interface : UC4 et Standard (XBP 2.0)
Syntaxe (paramètres)
R3_MODIFY_VARIANT
486
Chapter 4 JCL UC4 pour les applications
REPORT=...
,VARIANT=...
,SELNAME=...
,KIND=P
,LOW=...
[,VERIFY=...]
[,DELAY=...]
Elément de syntaxe
Description/format
REP[ORT]=
Nom du rapport
Format : nom ou Littéral de script
VAR[IANT]=
Nom de la variante
Format : nom ou Littéral de script
SELN[AME]=
Nom du paramètre.
Format : nom ou Littéral de script
KIND=P
Type du paramètre = paramètre.
Format : nom ou Littéral de script
LOW=
Valeur du paramètre.
Format : nom ou Littéral de script
VERIFY=
Vérification de la modification de la variante.
Format : nom ou Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Vérifier la variante modifiée.
"NO" = Ne pas vérifier la variante modifiée.
DELAY=
Durée en secondes pendant laquelle l'Agent attend la modification d'une
variante.
Format : Nombre
Valeur par défaut : "0"
Une fois ce délai écoulé, la synchronisation du tampon entre les Serveurs
d'applications doit être terminée (si le système SAP est utilisé avec plusieurs
Serveurs d'applications).
Syntaxe (options de sélection)
R3_MODIFY_VARIANT
REPORT=...
,VARIANT=...
,SELNAME=...
,KIND=S
,LOW=...
[,HIGH=...]
[,SIGN=...]
[,OPTION=...]
[,MODE=...]
[,VERIFY=...]
[,DELAY=...]
Automation Engine
Elément de syntaxe
Description/format
REP[ORT]=
Nom du rapport
Format : nom ou Littéral de script
VAR[IANT]=
Nom de la variante
Format : nom ou Littéral de script
SELN[AME]=
Nom de l'option de sélection.
Format : nom ou Littéral de script
KIND=S
Type du paramètre = Option de sélection
Format : nom ou Littéral de script
LOW=
Valeur du paramètre (LOW).
Format : nom ou Littéral de script
HIGH=
Valeur du paramètre (HIGH)
Format : nom ou Littéral de script
Ce paramètre ne doit être indiqué que si OPTION=BT ou NB (intervalle) !
SIGN=
Indicateur (Include/Exclude).
Format : nom ou Littéral de script
Valeurs autorisées : "I" (valeur par défaut) et "E"
"I" = Include
"E" = Exclude
OPTION=
Option déterminant le mode de sélection.
Format : nom ou Littéral de script
"EQ" - égal (valeur par défaut)
"NE" - non égal à
"GT" - plus grand que
"GE" - plus grand ou égal
"LT" -plus petit que
"LE" - plus petit ou égal
"CP" - contient un modèle (avec des caractères de remplacement)
"NP" - ne contient pas de modèle
"BT" - Intervalle (saisir aussi HIGH)
"NB" - hors de l'intervalle (saisir aussi HIGH)
MODE=
Modification ou ajout du terme de sélection.
Format : nom ou Littéral de script
Valeurs autorisées : "REPLACE" (valeur par défaut) et "APPEND"
Ce paramètre vous permet de créer des sélections multiples.
VERIFY=
Vérification de la modification de la variante.
Format : nom ou Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Vérifier la variante modifiée.
"NO" = Ne pas vérifier la variante modifiée.
487
488
Chapter 4 JCL UC4 pour les applications
DELAY=
Durée en secondes pendant laquelle l'Agent attend la modification d'une
variante.
Format : Nombre
Valeur par défaut : "0"
Une fois ce délai écoulé, la synchronisation du tampon entre les Serveurs
d'applications doit être terminée (si le système SAP est utilisé avec plusieurs
Serveurs d'applications).
Remarques
Selon l'entrée considérée dans la variante, on distingue :
l
l
Paramètres : seront demandés avec PARAMETERS et
Options de sélection : seront demandés avec SELECT-OPTIONS.
Conseils sur la modification des variantes :
l
l
l
l
l
Les entrées qui ne sont pas indiquées demeurent inchangées.
Si une option de sélection est modifiée, la validité de la plage de valeur peut être changée par une
nouvelle modification. Vous ne pouvez pas rétablir la valeur initiale.
Vous ne pouvez pas modifier ici les sélections libres des variantes (pour les bases de données
logiques).
Si plusieurs valeurs distinctes sont transmises pour une option de sélection, l'ordre dans la variante
ne correspond pas forcément à celui indiqué !
Si le programme ABAP auquel la variante appartient utilise une base de données logique, la
modification de la variante peut générer une erreur dans le système SAP (par exemple avec la base
de données logique PSJ). En effet, le masque de sélection de la base de données logique du
système SAP est modifié dynamiquement. Dans ce cas, il est recommandé de copier la variante
d'origine et de modifier la copie.
Pour une version SAP de base inférieure à 7.10 et/ou une version XBP inférieure à 3.0, les valeurs des
paramètres et options de sélection (y compris les intervalles de/à) sont limitées à une longueur
maximale de 45 caractères !
Exemple (paramètres)
R3_MODIFY_VARIANT REPORT=RSUSR002,VAR=SAP_
STANDARD,SELN=TCODE,KIND=P,LOW='SE01'
Exemples (options de sélection)
Cet exemple sélectionne tous les utilisateurs dont le nom commence par "B".
R3_MODIFY_VARIANT REP=RSUSR002,VAR=SAP_
STANDARD,SELN=USER,KIND=S,LOW='B*',SIGN=I,OPTION=CP
Sélectionner tous les utilisateurs sauf ceux dont le nom se situe entre "USER100" et "USER199".
R3_MODIFY_VARIANT
...,SELN=USER,KIND=S,LOW='USER100',HIGH='USER199',SIGN=I,OPTION=NB
Sélectionner le Cercle de commande 10 et 71-77 - Sélection multiple.
Automation Engine
489
R3_MODIFY_VARIANT
REP=RF...,VAR=v1,SELN=CERCO,KIND=S,LOW='10',SIGN=I,OPTION=EQ,MODE=R
R3_MODIFY_VARIANT
REP=RF...,VAR=v1,SELN=CERCO,KIND=S,LOW='71',HIGH='77',SIGN=I,OPTION=BT,MODE
=A
Rubriques connexes :
Généralités sur le JCL SAP
Exemples
Exécution d'un MBeans
R3_RAISE_EVENT
Déclenche un Evènement défini dans SAP.
Transaction : SM64
Interface : UC4 et Standard (XBP 2.0)
Syntaxe
R3_RAISE_EVENT
ID=...
[,PARAM=...]
[,TARGET_SERVER=...]
Elément de syntaxe
Description/format
ID=
Nom de l'évènement
Format : Littéral de script
Interface
UC4
nécessaire
Le nom indiqué doit comporter moins de 32 caractères.
PARAM=
Paramètre de l'Evènement.
Format : Littéral de script
Le nom indiqué doit comporter moins de 64 caractères.
TARGET_SERVER=
Système de destination dans lequel l'Evènement doit être
déclenché
Format : Littéral de script
Valeur par défaut : contenu du champ "Système de
destination" de l'onglet "Attributs de l'hôte".
Remarques
Le script permet de déclencher un Evènement qui a été défini dans SAP avec la transaction SM62. Il peut
s'agir d'un Evènement système (prédéfini par SAP) ou Utilisateur. Vous pouvez indiquer comme
paramètre d'Evènement une chaîne de caractères au contenu libre. Si le système de destination dans
lequel l'Evènement doit être déclenché n'est pas transmis au script, celui indiqué dans l'onglet Attributs
de l'hôte est utilisé.
490
Chapter 4 JCL UC4 pour les applications
Exemple
Dans l'exemple, l'Evènement "Test" doit être déclenché. Le paramètre d'Evènement "Myparam" est
précisé.
R3_RAISE_EVENT ID="TEST",PARAM="Myparam"
Rubriques connexes :
Généralités sur le JCL SAP
R3_SCHEDULE_JOB_CANCEL
Réattribue le statut "Planifié" à un Job SAP déjà lancé.
Transaction : SM37
Interface : UC4
Syntaxe
R3_SCHEDULE_JOB_CANCEL
NAME=...
,JOBCOUNT=...
Elément de syntaxe
Description/format
NAME=
Nom du Job SAP
Format : Littéral de script ou Nom UC4
Utilisé conjointement avec le numéro du Job, ce paramètre permet d'identifier
le Job SAP de manière univoque.
JOBCOUNT=
Numéro du Job SAP.
Format : Littéral de script
Utilisé conjointement avec le nom du Job, ce paramètre permet d'identifier le
Job SAP de manière univoque.
Description
Ce script permet de reprendre le lancement d'un Job SAP. Le statut du Job SAP passe de "Déclenché" à
"Planifié".
Vous pouvez déterminer les Jobs SAP ayant le statut "Déclenché" à l'aide de R3_GET_JOBS. Le résultat
obtenu est affiché dans le rapport d'activation et peut être analysé et traité dans l'onglet Post-Script.
Exemple
Dans l'exemple, le Job SAP nommé "MYJOB" et dont le numéro est "13541601" est réinitialisé. Son statut
passe de "Déclenché" à "Planifié".
R3_SCHEDULE_JOB_CANCEL NAME="MYJOB",JOBCOUNT=13541601
Automation Engine
Rubriques connexes :
Généralités sur le JCL SAP
R3_SEND_SPOOL_REQUEST
Envoie une requête spool existante.
Transaction : SP01
Interface : UC4
Syntaxe
R3_SEND_SPOOL_REQ[UEST]
[JOBNAME=...]
[,JOBCOUNT=...]
[,STEP=...]
[,SPOOLNR=...]
[,RECIPIENT=...]
[,ADDRESSTYPE=...]
[,EXPRESS=...]
[,COPY=...]
[,BLINDCOPY=...]
[,NOFORWARD=...]
[,LINE_FROM=...]
[,LINE_TO=...]
[,TITLE=...]
[,ERROR=...]
[,NOPRINT=...]
[,DELIVER=...]
[,STATUSBYMAIL=...]
Elément de syntaxe
Description/format
JOBNAME=
Nom d'un Job d'arrière-plan
Format de la valeur : Littéral de script
JOBCOUNT=
Numéro du Job d'arrière-plan
Format de la valeur : Littéral de script
STEP=
Numéro de l'étape
Format de la valeur : Nombre
SPOOLNR=
Numéro des listes Spool
Format de la valeur : Littéral de script
Vous pouvez soit préciser ce paramètre, soit indiquer les paramètres
JOBNAME=, JOBCOUNT= et STEP=.
RECIPIENT=
Destinataire
Format de la valeur : Littéral de script
491
492
Chapter 4 JCL UC4 pour les applications
ADDRESSTYPE=
Type d'adresse
Format de la valeur : Littéral de script
Valeurs autorisées :
"B" (Valeur par défaut) - Utilisateur SAP
"C" - Liste de distribution générale
"D" - Adresse X.500
"F" - Numéro de fax
"G" - objet d'organisation/ID
"H" - Unité d'organisation/poste prévu
"J" - objet SAP
"L" - Numéro de télex
"O" - Utilisateur SAPoffice
"P" - Liste de distribution personnelle
"R" - Utilisateur SAP dans un autre système SAP
"U" - Adresse Internet
"X" - Adresse X.400
EXPRESS=
Envoi de message express
Format de la valeur : Littéral de script
Valeurs autorisées : "" (valeur par défaut) et "X"
"" - Aucun envoi n'a lieu.
"X" - Le message express est envoyé.
COPY=
Envoi d'une copie
Format de la valeur : Littéral de script
Valeurs autorisées : "" (valeur par défaut) et "X"
"" - Aucun envoi n'a lieu.
"X" - La copie est envoyée.
BLINDCOPY=
Envoi d'une copie privée
Format de la valeur : Littéral de script
Valeurs autorisées : "" (valeur par défaut) et "X"
"" - Aucun envoi n'a lieu.
"X" - La copie privée est envoyée.
NOFORWARD=
Pas de suivi autorisé
Format de la valeur : Littéral de script
Valeurs autorisées : "" (valeur par défaut) et "X"
"" - Le transfert est autorisé.
"X" - Le transfert n'est pas autorisé.
LINE_FROM=
Ligne de début
Format de la valeur : Nombre
Valeur par défaut : "0"
LINE_TO=
Ligne de fin
Format de la valeur : Nombre
Valeur par défaut : "0"
TITLE=
Titre du Mail (Objet)
Format de la valeur : Littéral de script
Automation Engine
ERROR=
493
Comportement adopté si une erreur survient.
Format de la valeur : Littéral de script
Valeurs autorisées : "IGNORER" et "INTERROMP" (valeur par défaut)
"IGNORER" = Le Job UC4 se poursuit.
"INTERROMP" - Le Job UC4 se termine anormalement.
NOPRINT=
Aucune impression autorisée
Format de la valeur : Littéral de script
Valeurs autorisées : "Y" et "N" (valeur par défaut).
"Y" = L'impression n'est pas autorisée.
"N" - L'impression est autorisée.
DELIVER=
Statut d'envoi du rapport
Format de la valeur : Littéral de script
Valeurs autorisées : "" (valeur par défaut), "A", "E" et "N"
" " - Tel que configuré dans le système SAP
"A" - Toujours
"E" - En cas d'erreur
"N" - Jamais
STATUSBYMAIL=
Statut d'envoi du rapport par e-mail
Format de la valeur : Littéral de script
Valeurs autorisées : "" (valeur par défaut), "A", "E" et "N"
" " - Tel que configuré dans le système SAP
"A" - Toujours
"E" - En cas d'erreur
"N" - Jamais
Remarques
Vous pouvez utiliser la fonction de trois façons :
1. Vous pouvez définir le spool à l'aide des paramètres JOBNAME= et JOBCOUNT=. Le paramètre
STEP= est en option, la valeur standard est 1.
2. Vous pouvez préciser directement la valeur du paramètre SPOOLNR=.
3. Ou bien vous n'utilisez aucun de ces paramètres. Dans ce cas, le spool est fourni par chaque Job
dans le système SAP exécuté précédemment par un Job UC4. L'indication d'un numéro de l'étape
est possible.
L'utilisation des paramètres NOPRINT=, DELIVER= et STATUSBYMAIL= nécessite les packages de
support SAP suivants :
l
l
l
l
pour 4.6C : SAPKB46C52
pour 06:20:00 : SAPKB62059
pour 06:40:00 : SAPKB64017
pour 07:00:00 : SAPKB70008
494
Chapter 4 JCL UC4 pour les applications
Exemple
R3_SEND_SPOOL_REQUEST
JOBNAME='MYJOB',JOBCOUNT=123,STEP=5094,RECIPIENT='Dupont',ADDRESSTYPE='O'
Rubriques connexes :
Généralités sur le JCL SAP
R3_SET_BDCDATA
Définit les données BDC.
Transaction : Interface : UC4
Syntaxe
R3_SET_BDCDATA
PROGRAM=...
,DYNPRO=...
[,DYBEGIN=...]
Elément de syntaxe
Description/format
PROGRAM=
Nom du programme, 40 caractères maximum.
Format : Littéral de script
DYNPRO=
Numéro du masque, quatre caractères.
Format : Littéral de script
DYBEGIN=
Paramètre indiquant si un nouveau masque commence.
Format : Littéral de script
Valeurs autorisées : "" (valeur par défaut), "X"
"" = Aucun nouveau masque écran.
"X" = Nouveau masque écran
R3_SET_BDCDATA
,FNAM=...
,FVAL=...
Elément de syntaxe
Description/format
FNAM=
Nom du champ, 132 caractères maximum.
Format : Littéral de script
FVAL=
Valeur qui doit être attribuée au champ, 132 caractères maximum.
Format : Littéral de script
Remarques
Le Script est utilisé pour définir des données BDC (Batch Data Communication). Il permet ainsi d'attribuer
des valeurs aux champs des masques en mode batch. L'Agent SAP enregistre d'abord ces affectations
Automation Engine
495
dans une table interne. R3_CALL_TRANSACTION lance le traitement à proprement parler. La table
interne est ensuite réinitialisée.
En premier lieu, R3_SET_BDCDATA est exécuté avec les paramètres PROGRAM=, DYNPRO= et
DYBEGIN=. Les paramètres FNAM= et FVAL= attribuent ensuite des valeurs aux champs souhaités. La
définition des données BDC peut être répétée aussi souvent que nécessaire, pour le masque considéré ou
un autre masque.
Vous pouvez déterminer les noms des masques et des différents champs en ligne dans le système SAP.
Pour ce faire, démarrez la transaction via le menu Système - Statut et affichez les informations techniques
en appuyant sur la touche d'aide F1. La routine d'enregistrement de la transaction "SM35" fournit
également les noms des masques et des champs.
Exemple
Dans l'exemple, les masques de l'intégralité de la transaction "SA38" sont complétés avec des données.
Les masques sont exécutés dans l'ordre prédéfini et des valeurs attribuées aux champs. La transaction
"SA38" est ensuite démarrée pour mettre à jour les données.
R3_SET_BDCDATA PROGRAM="SAPMS38M", DYNPRO="0101", DYBEGIN="X"
R3_SET_BDCDATA FNAM="BDC_OKCODE", FVAL="=SSET"
R3_SET_BDCDATA FNAM="RS38M-PROGRAMM", FVAL="RSEINB00"
R3_SET_BDCDATA PROGRAM="SAPLSVAR", DYNPRO="0302", DYBEGIN="X"
R3_SET_BDCDATA FNAM="BDC_OKCODE", FVAL="=CHNG"
R3_SET_BDCDATA FNAM="RSVAR-VARIANT", FVAL="UM-V1"
R3_SET_BDCDATA FNAM="RSVAR-FLAG1", FVAL="X"
R3_SET_BDCDATA PROGRAM="RSEINB00", DYNPRO="1000", DYBEGIN="X"
R3_SET_BDCDATA FNAM="BDC_OKCODE", FVAL="=SAVE"
R3_SET_BDCDATA FNAM="P_FILE", FVAL="test.txt"
R3_SET_BDCDATA PROGRAM="RSEINB00", DYNPRO="1000", DYBEGIN="X"
R3_SET_BDCDATA FNAM="BDC_OKCODE", FVAL="=VBAC"
R3_SET_BDCDATA PROGRAM="SAPLSVAR", DYNPRO="0302", DYBEGIN="X"
R3_SET_BDCDATA FNAM="BDC_OKCODE", FVAL="/EBACK"
R3_SET_BDCDATA PROGRAM="SAPMS38M", DYNPRO="0101", DYBEGIN="X"
R3_SET_BDCDATA FNAM="BDC_OKCODE", FVAL="=BACK"
R3_CALL_TRANSACTION CODE="SA38", UPDATE="S"
Rubriques connexes :
Généralités sur le JCL SAP
R3_SET_FREE_SELECTION
Définit une limite libre.
Transaction : SA38
Interface : Standard (XBP 3,0)
Syntaxe
R3_SET_FREE_SELECTION
,TABLENAME=...
,FIELDNAME=...
,LOW=...
[,HIGH=...]
496
Chapter 4 JCL UC4 pour les applications
[,SIGN=...]
[,OPTION=...]
Elément de syntaxe
Description/format
TABLENAME=
Nom de la table
Format : Littéral de script
FIELDNAME=
Nom du champ
Format : Littéral de script
LOW=
Valeur du paramètre (LOW)
Format : Littéral de script
HIGH=
Valeur du paramètre (HIGH)
Format : Littéral de script
SIGN=
Indicateur (Include/Exclude)
Format : Littéral de script
Valeurs autorisées : "I" (valeur par défaut) et "E"
"I" = Include
"E" = Exclude
OPTION=
Option utilisée pour effectuer la sélection
Format : Littéral de script ou Nom UC4
"EQ" - égal (valeur par défaut)
"NE" - non égal à
"GT" - plus grand que
"GE" - plus grand ou égal
"LT" -plus petit que
"LE" - plus petit ou égal
"CP" - contient un modèle (avec des caractères de remplacement)
"NP" - ne contient pas de modèle
"BT" - Intervalle (saisir aussi HIGH)
"NB" - hors de l'intervalle (saisir aussi HIGH)
Remarques
Le Script définit une limite individuelle libre. Exécutez-le plusieurs fois à la suite pour déterminer plusieurs
limites libres. Elles sont collectées et transmises lors de la prochaine exécution de R3_ACTIVATE_
REPORT.
Si vous utilisez plusieurs exécutions R3_ACTIVATE_REPORT dans le Script du Job SAP, vous
devez définir des limites libres pour chacune d'elles. Ces critères ne sont pas repris lors de l'exécution
suivante des fonctions.
Exemple
R3_SET_FREE_SELECTION
TABLENAME='TAB01',FIELDNAME='FIELD01',LOW='17',SIGN='I'
R3_ACTIVATE_REPORT
REPORT='ZSUSER00',COVERPAGE=YES,DESTINATION=LT77,IMMEDIATELY=YES
Rubriques connexes :
Automation Engine
Généralités sur le JCL SAP
R3_SET_LOG_ATTR
Ajoute un attribut de logging dans l'architecture de moniteur SAP
Transaction : RZ20
Interface : XMW
Syntaxe
R3_SET_LOG_ATTR
NODE=...
,MESSAGE=...
[,VAR1=...]
[,VAR2=...]
[,VAR3=...]
[,VAR4=...]
[,COL_METHOD=...]
[,AN_METHOD=...]
[,AU_METHOD=...]
[,VIEW=...]
[,VIEW_FRAME=...]
[,COLOR=...]
[,SEVERITY=...]
[,MAX_ALERTS=...]
Elément de
syntaxe
Description/format
NODE=
Nom du nœud
Format de la valeur : Littéral de script
MESSAGE=
ID et numéro du message SAP T100 (les deux indications sont séparées par un
espace)
Format de la valeur : Littéral de script
Utilisez "00 398" pour afficher uniquement les contenus variables.
VAR1=
Variable de message 1
Format de la valeur : Littéral de script
VAR2=
Variable de message 2
Format de la valeur : Littéral de script
VAR3=
Variable de message 3
Format de la valeur : Littéral de script
VAR4=
Variable de message 4
Format de la valeur : Littéral de script
COL_
METHOD=
Méthode de collecte de données du nœud
Format de la valeur : Littéral de script
AN_
METHOD=
Méthode d'analyse du nœud
Format de la valeur : Littéral de script
497
498
Chapter 4 JCL UC4 pour les applications
AU_
METHOD=
Méthode de réaction automatique du nœud
Format de la valeur : Littéral de script
VIEW=
Détermine quel message de l'attribut log doit être affiché dans la vue de statut actuelle
du moniteur d'Alerte.
Format de la valeur : Littéral de script
Valeurs autorisées : "HIGHALERT", "LAST" (valeur par défaut) et "WORST_SINCE"
"HIGHALERT" - Maximum
"LAST" - Dernière
"WORST_SINCE" - La pire depuis
VIEW_
FRAME=
Durée en minutes pendant laquelle l'Alerte la pire doit être affichée.
Format de la valeur : Nombre
Valeur par défaut : "0"
La valeur "0" entraîne l'utilisation de la valeur par défaut dans l'architecture de
moniteur. Celle-ci correspond à "30".
COLOR=
Couleur
Format de la valeur : Littéral de script
Valeurs autorisées : "AL_VAL_GREEN" (valeur par défaut), "AL_VAL_YELLOW" et
"AL_VAL_RED"
"AL_VAL_GREEN" - Vert
"AL_VAL_YELLOW" - Jaune
"AL_VAL_RED" - Rouge
SEVERITY=
Degré de criticité
Format de la valeur : Nombre
Valeur par défaut : "0"
La valeur "0" entraîne l'utilisation de la valeur par défaut dans l'architecture de
moniteur. Celle-ci correspond à "255".
MAX_
ALERTS=
Nombre maximum d'Alertes qui doivent être enregistrées dans le nœud.
Format de la valeur : Nombre
Valeur par défaut : "0"
Cette restriction ne s'applique que si les Alertes ont été enregistrées dans
l'architecture de moniteur.
Remarques
S'il existe déjà un attribut log, il est alors modifié. S'il n'en existe pas encore, le Script le crée avec le
message.
Format du paramètre NODE=
Ce paramètre décrit un chemin complet. Chacun des éléments est séparé par une barre oblique "/".
Le chemin commence toujours par un nœud de contexte. Peuvent suivre un nœud de total, d'objet et
d'attribut.
Les nœuds de contexte, d'objet et d'attribut ne doivent apparaître qu'une seule fois dans le chemin. En
revanche, les nœuds de total peuvent apparaître plusieurs fois.
Automation Engine
499
Exemple 1 :
"UC4/TestNode/PerfAttributUC4"
l
l
l
"UC4" - Nom de contexte
"TestNode" - Noeud d'objet
"PerfAttributUC4" - Noeud d'attribut
Exemple 2 :
"UC4/Summary1/Summary2/TestNode/PerfAttributUC4"
l
l
l
l
l
"UC4" - Nom de contexte
"Summary1" - Noeud de total
"Summary2" - Noeud de total
"TestNode" - Noeud d'objet
"PerfAttributUC4" - Noeud d'attribut
Exemple
Une fois l'exemple suivant exécuté, il existe un nœud de contexte nommé "UC4", un nœud d'objet
nommé "Test" et un attribut log avec le message "00 398".
R3_SET_LOG_ATTR NODE="UC4/Test/LogAttribute",MESSAGE="00
398",VAR1="variable1",VAR2="variable2",VAR3="variable3",VAR4="variable4",SE
VERITY="12"
Rubriques connexes :
Généralités sur le JCL SAP
R3_SET_PERF_ATTR
Ajoute un attribut de performance dans l'architecture de moniteur SAP
Transaction : RZ20
Interface : XMW
Syntaxe
R3_SET_PERF_ATTR
NODE=...
,VALUE=...
[,UNIT=...]
[,COL_METHOD=...]
[,AN_METHOD=...]
[,AU_METHOD=...]
[,ALERT_DIR=...]
[,G2Y=...]
[,Y2R=...]
[,Y2G=...]
[,R2Y=...]
500
Chapter 4 JCL UC4 pour les applications
Elément de
syntaxe
Description/format
NODE=
Nom du nœud
Format de la valeur : Littéral de script
VALUE=
Valeur à définir
Format de la valeur : Nombre
UNIT=
Unité de la valeur (abréviation)
Format de la valeur : Littéral de script
COL_METHOD=
Méthode de collecte de données du nœud
Format de la valeur : Littéral de script
AN_METHOD=
Méthode d'analyse du nœud
Format de la valeur : Littéral de script
AU_METHOD=
Méthode de réaction automatique du nœud
Format de la valeur : Littéral de script
ALERT_DIR=
Détermine qu'une Alerte est générée si la valeur est supérieure ou inférieure à une
valeur seuil.
Valeurs autorisées : "ABOVE" (valeur par défaut) et "BELOW"
"ABOVE" - Alerte en cas de dépassement d'une valeur seuil
"BELOW" - Alerte en cas de valeur seuil non atteinte
G2Y=
Valeur seuil pour la modification de la couleur vert en jaune
Format de la valeur : Nombre
Valeur par défaut : "0"
Y2R=
Valeur seuil pour la modification de la couleur jaune en rouge
Format de la valeur : Nombre
Valeur par défaut : "0"
Y2G=
Valeur seuil pour la modification de la couleur jaune en vert
Format de la valeur : Nombre
Valeur par défaut : "0"
R2Y=
Valeur seuil pour la modification de la couleur rouge en jaune
Format de la valeur : Nombre
Valeur par défaut : "0"
Remarques
S'il existe déjà un attribut de performance, il est alors modifié. S'il n'en existe pas encore, le Script le crée
avec la valeur.
Format du paramètre NODE=
Ce paramètre décrit un chemin complet. Chacun des éléments est séparé par une barre oblique "/".
Le chemin commence toujours par un nœud de contexte. Peuvent suivre un nœud de total, d'objet et
d'attribut.
Les nœuds de contexte, d'objet et d'attribut ne doivent apparaître qu'une seule fois dans le chemin. En
revanche, les nœuds de total peuvent apparaître plusieurs fois.
Automation Engine
501
Exemple 1 :
"UC4/TestNode/PerfAttributUC4"
l
l
l
"UC4" - Nom de contexte
"TestNode" - Noeud d'objet
"PerfAttributUC4" - Noeud d'attribut
Exemple 2 :
"UC4/Summary1/Summary2/TestNode/PerfAttributUC4"
l
l
l
l
l
"UC4" - Nom de contexte
"Summary1" - Noeud de total
"Summary2" - Noeud de total
"TestNode" - Noeud d'objet
"PerfAttributUC4" - Noeud d'attribut
Exemple
Une fois l'exemple suivant exécuté, il existe un nœud de contexte intitulé "UC4", un nœud d'objet intitulé
"Test" et un attribut de performance avec la valeur "150". La couleur vert est attribuée car la valeur seuil de
G2Y n'a pas été dépassée.
R3_SET_PERF_ATTR
NODE="UC4/Test/PerfAttribute",VALUE="150",UNIT="sec",G2Y="160",Y2R="200",Y2
G="160",R2Y="190"
Rubriques connexes :
Généralités sur le JCL SAP
R3_SET_PRINT_DEFAULTS
Définit des valeurs par défaut pour les paramètres d'impression utilisés lors de l'exécution de rapports.
Transaction : Interface : UC4 et Standard
Syntaxe
R3_SET_PRINT_DEF[AULTS]
[DESTINATION=...
[,COVERPAGE=...]
[,IMMEDIATELY=...]
[,RELEASE=...]
[,COPIES=...]
[,LIST_NAME=...]
[,LIST_TEXT=...]
[,NEW_LIST_ID=...]
[,EXPIRATION=...]
[,LINE_COUNT=...]
[,LINE_SIZE=...]
[,LAYOUT=...]
502
Chapter 4 JCL UC4 pour les applications
[,SAP_COVER_PAGE=...]
[,RECEIVER=...]
[,DEPARTMENT=...]
[,AUTHORITY=...]
[,DATA_SET=...]
[,TYPE=...]
[,OS_COVER_PAGE=...]
[,SPOOL_PRIORITY=...]
[,TEXTONLY=...]
[,FRAMES=...]
[,ARCHIVE_MODE=...]
[,ARCHIVE_SAPOBJECT=...]
[,ARCHIVE_OBJECT=...]
[,ARCHIVE_INFO=...]
[,ARCHIVE_TEXT=...]
[,MONITOR=...]
Elément de syntaxe
Description/format
DEST[INATION]=
Périphérique de sortie
Format : Littéral de script
Ce paramètre permet d'indiquer le nom du système de sortie. Il s'agit dans la
plupart des cas du nom d'une imprimante, mais il peut également s'agir de
celui d'un télécopieur, etc.
Attention : pour des raisons techniques liées à l'interface XBP de SAP,
vous ne pouvez pas utiliser les noms d'imprimante SAP longs dans UC4. Par
conséquent, indiquez le nom technique de quatre caractères.
Paramètres
d'impression
COVER[PAGE]=
Sélection de la page de garde
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
Ce paramètre détermine si une page de garde contenant les sélections de
rapports doit figurer avant la liste. Si une page de garde est générée, elle est
également reprise dans le rapport de Job. Cela permet de documenter les
paramètres de cette exécution.
IMM[EDIATELY]=
Impression Immédiate
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
REL[EASE]=
Supprimer après Impression
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
Ce paramètre permet de déterminer si la requête spool doit être supprimée
dès que le périphérique de sortie a effectué l'impression ou seulement à
l'expiration de la période de rétention.
Automation Engine
COPIES=
503
Nombre de copies
Format : Entier
Valeur par défaut : "0"
Entre ici le nombre désiré de copies de votre document.
LIST_N[AME]=
Nom de la requête spool
Format : Littéral de script
Ce paramètre vous permet d'indiquer le nom de la requête spool. Ce dernier
peut contenir des lettres, des chiffres, des caractères spéciaux et des
espaces dans tous les modes. Le nom proposé par défaut pour les requêtes
spool est composé des huit caractères du nom du rapport, du séparateur "_"
et des trois premiers caractères du nom de l'utilisateur.
LIST_T[EXT]=
Texte de la page de garde
Format : Littéral de script
Ce paramètre vous permet d'indiquer le texte décrivant la requête spool. Ce
dernier peut contenir des lettres, des chiffres, des caractères spéciaux et des
espaces.
NEW_LIST_ID=
Nouvelle requête spool
Format : Littéral de script
Valeurs autorisées : "YES" (valeur par défaut) et "NO"
EXPIR[ATION]=
Période de Rétention
Format : Entier
Valeur par défaut : "0"
Ce paramètre permet de déterminer le nombre de jours pendant lequel la
requête spool doit être conservée dans le système spool avant d'être
supprimée.
LINE_COUNT=
Longueur des pages de la liste
Format : Entier
Valeur par défaut : "0"
Nombre de lignes par page. Si ce champ contient le chiffre zéro ou est vide, le
nombre de pages de la liste est illimité (non autorisé pour l'impression). La
longueur de la liste est alors uniquement déterminée par son contenu. Lors de
l'impression, le nombre maximal de lignes par page dépend du format choisi.
Pour modifier le nombre de lignes, vous devez sélectionner un autre format.
LINE_SIZE=
Largeur des lignes de la liste
Format : Entier
Valeur par défaut : "0"
Ce paramètre détermine la largeur actuelle des lignes de la liste. Lors de
l'impression, la largeur maximale des lignes dépend du format choisi. Pour
modifier la largeur des lignes, vous devez sélectionner un autre format.
504
Chapter 4 JCL UC4 pour les applications
LAYOUT=
Préparation à l'impression
Format : Littéral de script
Ce paramètre détermine le format de la sortie de la requête spool.
Concrètement, il définit le format des pages, c'est-à-dire le nombre maximal
de lignes et de colonnes par page imprimée.
SAP_COVER[_PAGE] Page de Garde SAP
=
Format : Littéral de script
Valeurs autorisées : "" (valeur par défaut), "X" et "D"
"" - Pas d'impression de la page de garde
"X" - Impression de la page de garde
"D" - L'impression de la page de garde dépend du paramétrage de
l'imprimante
Ce paramètre détermine si une page de garde contenant certaines
informations (destinataire, département, format utilisé,...) doit être jointe à
l'impression issue de la requête spool.
RECEIVER=
Destinataire
Format : Littéral de script
Ce paramètre indique le nom du destinataire de la requête spool. Ce nom
figure sur la page de garde imprimée. Par défaut, le nom du destinataire est
celui de l'utilisateur actuel.
DEPART[MENT]=
Département sur la page de garde
Format : Littéral de script
Ce paramètre indique le nom du département concerné par la requête spool.
Celui-ci est imprimé sur la page de garde.
AUTHORITY=
Autorisation
Format : Littéral de script
Ce paramètre indique l'autorisation qui s'applique à la requête spool
(12 caractères au maximum). Le contenu de la requête spool n'est visible que
pour les utilisateurs disposant de l'autorisation indiquée.
DATA_SET=
Nom du jeu de données spool
Format : Littéral de script
TYPE=
Type de la requête spool
Format : Littéral de script
OS_COVER[_PAGE]=
Page de garde du spooler de l'hôte
Format : Littéral de script
Valeurs autorisées : "" (valeur par défaut), "X" et "D"
"" - Pas d'impression de la page de garde
"X" - Impression de la page de garde
"D" - L'impression de la page de garde dépend du paramétrage de
l'imprimante
SPOOL_PRI[ORITY]=
Priorité de la requête spool
Format : Entier
Valeur par défaut : "5"
Automation Engine
TEXTO[NLY]=
505
Texte seulement
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
Ce paramètre contrôle le mode de sortie des caractères non-ASCII d'une liste
imprimée.
Prérequis d'utilisation du paramètre (voir également la note SAP 777337) :
l
l
SAP Basis version 6.20 avec le package de support SAPKB62045
SAP Basis version 6.40 avec le package de support SAPKB64010
Pour l'utilisation de ce paramètre, l'interface UC4 est nécessaire.
FRAMES=
Cadre
Format : Littéral de script
Valeurs autorisées : "YES" (valeur par défaut) et "NO"
Contrôle la mise en cadre par défaut. Ses conditions d'utilisation sont
identiques à celles du paramètre TEXTONLY=.
Pour l'utilisation de ce paramètre, l'interface UC4 est nécessaire.
Paramètres d'archivage Paramètres d'archivage avec R3_ACTIVATE_REPORT
ARCHIVE_M[ODE]=
Mode de sauvegarde
Format : Littéral de script
Valeurs autorisées : "1" (valeur par défaut),"2" et "3"
"1" - Le document est seulement imprimé.
"2" - Le document est seulement sauvegardé dans une archive optique.
"3" - Le document est imprimé et sauvegardé dans une archive optique.
ARCHIVE_S
[APOBJECT]=
Type de l'objet Business
Format : Littéral de script
Les objets SAP sont classés en fonction de leur type.
ARCHIVE_O[BJECT]
=
Type de document
Format : Littéral de script
Les objets d'archivage sont classés en fonction du type de document.
ARCHIVE_I[NFO]=
Zone d'informations
Format : Littéral de script
Abréviation d'information pour la requête d'archivage.
ARCHIVE_T[EXT]=
Champ de texte d'information
Format : Littéral de script
Texte décrivant la requête d'archivage. Ce dernier peut contenir des lettres,
des chiffres, des caractères spéciaux et des espaces.
Paramètres de contrôle
MON[ITOR]=
Suivi du statut dans le protocole d'activation
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
506
Chapter 4 JCL UC4 pour les applications
Remarques
Les scripts permettent d'attribuer des valeurs par défaut aux paramètres d'impression. Celles-ci
s'appliquent à l'ensemble du script ou jusqu'à l'attribution d'une nouvelle valeur par défaut. Les valeurs par
défaut ne sont valides que pour le Job dans lequel elles ont été définies.
La définition de valeurs par défaut améliore la visibilité du script UC4. En même temps, les problèmes liés
à la limitation à 1024 caractères/ligne sont évités, car l'instruction de traitement même est seulement
compilée dans l'Agent SAP.
Le script peut uniquement être utilisé avec R3_ACTIVATE_REPORT pour attribuer des valeurs par défaut
aux paramètres d'impression.
Exemple
L'exemple suivant montre comment sont définies les valeurs par défaut pour l'imprimante et le nombre
d'exemplaires. Lors de l'exécution du rapport, le nombre de copies sera remplacé par la valeur "6".
Toutefois, cette modification ne s'applique qu'à ce rapport. La valeur par défaut ("8") demeure inchangée.
R3_SET_PRINT_DEFAULTS DESTINATION=PR01
R3_SET_PRINT_DEFAULTS COPIES=8
R3_ACTIVATE_REPORT REPORT=RSM04000,COPIES=6
Rubriques connexes :
Généralités sur le JCL SAP
R3_SET_SELECT_OPTION
Définit un critère de sélection.
Transaction : SA38
Interface : Standard (XBP 3,0)
Syntaxe
R3_SET_SELECT_OPTION
,SELNAME=...
,KIND=...
,LOW=...
[,HIGH=...]
[,SIGN=...]
[,OPTION=...]
Elément de syntaxe
Description/format
SELNAME=
Nom de l'option de sélection ou du paramètre
Format : Littéral de script
Automation Engine
KIND=
507
Type de sélection
Format : Littéral de script
Valeurs possibles : "S" et "P"
"S" - critère de sélection
"P" - paramètre
LOW=
Valeur du paramètre (LOW)
Format : Littéral de script
HIGH=
Valeur du paramètre (HIGH)
Format : Littéral de script
SIGN=
Indicateur (Include/Exclude)
Format : Littéral de script
Valeurs autorisées : "I" (valeur par défaut) et "E"
"I" = Include
"E" = Exclude
OPTION=
Option utilisée pour effectuer la sélection
Format : Littéral de script ou Nom UC4
"EQ" - égal (valeur par défaut)
"NE" - non égal à
"GT" - plus grand que
"GE" - plus grand ou égal
"LT" -plus petit que
"LE" - plus petit ou égal
"CP" - contient un modèle (avec des caractères de remplacement)
"NP" - ne contient pas de modèle
"BT" - Intervalle (saisir aussi HIGH)
"NB" - hors de l'intervalle (saisir aussi HIGH)
Remarques
Le Script définit un critère de sélection individuel. Exécutez-le plusieurs fois à la suite pour déterminer
plusieurs critères de sélection. Ils sont collectés et transmis lors de la prochaine exécution de R3_
ACTIVATE_REPORT ou R3_CREATE_VARIANT.
Si vous utilisez plusieurs exécutions R3_ACTIVATE_REPORT ou R3_CREATE_VARIANT dans le
Script du Job SAP, vous devez définir des critères de sélection pour chacune d'elles. Ces critères ne sont
pas repris lors de l'exécution suivante des fonctions.
Exemple
L'exemple définit la valeur "17" pour le paramètre "Age minimum". Le critère de sélection est ensuite utilisé
pour créer une variante.
R3_SET_SELECT_OPTION SELNAME='MIN_ALT',KIND='P',LOW='17',SIGN='I'
R3_CREATE_VARIANT REP=REPORT01,VAR=NEW,TEXT='Nouvelle variante'
Rubriques connexes :
Généralités sur le JCL SAP
508
Chapter 4 JCL UC4 pour les applications
R3_SET_STATUS_ATTR
Ajoute un attribut de statut dans l'architecture de moniteur SAP
Transaction : RZ20
Interface : XMW
Syntaxe
R3_SET_STATUS_ATTR
NODE=...
,MESSAGE=...
[,VAR1=...]
[,VAR2=...]
[,VAR3=...]
[,VAR4=...]
[,COL_METHOD=...]
[,AN_METHOD=...]
[,AU_METHOD=...]
[,CAUSE_ALERT=...]
[,COLOR=...]
Elément de
syntaxe
Description/format
NODE=
Nom du nœud
Format de la valeur : Littéral de script
MESSAGE=
ID et numéro du message SAP T100 (les deux indications sont séparées par un
espace)
Format de la valeur : Littéral de script
Utilisez "00 398" pour afficher uniquement les contenus variables.
VAR1=
Variable de message 1
Format de la valeur : Littéral de script
VAR2=
Variable de message 2
Format de la valeur : Littéral de script
VAR3=
Variable de message 3
Format de la valeur : Littéral de script
VAR4=
Variable de message 4
Format de la valeur : Littéral de script
COL_
METHOD=
Méthode de collecte de données du nœud
Format de la valeur : Littéral de script
AN_METHOD=
Méthode d'analyse du nœud
Format de la valeur : Littéral de script
AU_METHOD=
Méthode de réaction automatique du nœud
Format de la valeur : Littéral de script
Automation Engine
CAUSE_
ALERT=
509
Détermine si une Alerte doit être supprimée.
Format de la valeur : Littéral de script
Valeurs autorisées : "ALWAYS" (valeur par défaut), "VALUE_CHG", "MSG_CHG"
et "NEVER"
"ALWAYS" - Toujours
"VALUE_CHG" - En cas de modification de la valeur
"MSG_CHG" - En cas de modification du message
"NEVER" - Jamais
COLOR=
Couleur
Format de la valeur : Littéral de script
Valeurs autorisées : "AL_VAL_GREEN" (valeur par défaut), "AL_VAL_YELLOW" et
"AL_VAL_RED"
"AL_VAL_GREEN" - Vert
"AL_VAL_YELLOW" - Jaune
"AL_VAL_RED" - Rouge
Remarques
S'il existe déjà un attribut de statut, il est alors modifié. S'il n'en existe pas encore, le Script le crée avec le
message.
Format du paramètre NODE=
Ce paramètre décrit un chemin complet. Chacun des éléments est séparé par une barre oblique "/".
Le chemin commence toujours par un nœud de contexte. Peuvent suivre un nœud de total, d'objet et
d'attribut.
Les nœuds de contexte, d'objet et d'attribut ne doivent apparaître qu'une seule fois dans le chemin. En
revanche, les nœuds de total peuvent apparaître plusieurs fois.
Exemple 1 :
"UC4/TestNode/PerfAttributUC4"
l
l
l
"UC4" - Nom de contexte
"TestNode" - Noeud d'objet
"PerfAttributUC4" - Noeud d'attribut
Exemple 2 :
"UC4/Summary1/Summary2/TestNode/PerfAttributUC4"
l
l
l
l
l
"UC4" - Nom de contexte
"Summary1" - Noeud de total
"Summary2" - Noeud de total
"TestNode" - Noeud d'objet
"PerfAttributUC4" - Noeud d'attribut
510
Chapter 4 JCL UC4 pour les applications
Exemple
Une fois l'exemple suivant exécuté, il existe un nœud de contexte intitulé "UC4", un nœud d'objet intitulé
"Test" et un attribut de statut avec le message "SY 019".
R3_SET_STATUS_ATTR NODE="UC4/Test/StatusAttribute",MESSAGE="SY 019"
Rubriques connexes :
Généralités sur le JCL SAP
R3_SET_TEXT_ATTR
Ajoute un attribut de texte dans l'architecture de moniteur SAP
Transaction : RZ20
Interface : XMW
Syntaxe
R3_SET_TEXT_ATTR
NODE=...
,TEXT=...
Elément de syntaxe
Description/format
NODE=
Nom du nœud
Format de la valeur : Littéral de script
TEXT=
Texte à afficher
Format de la valeur : Littéral de script
Remarques
S'il existe déjà un attribut de texte, il est alors modifié. S'il n'en existe pas encore, le Script le crée avec le
texte.
Format du paramètre NODE=
Ce paramètre décrit un chemin complet. Chacun des éléments est séparé par une barre oblique "/".
Le chemin commence toujours par un nœud de contexte. Peuvent suivre un nœud de total, d'objet et
d'attribut.
Les nœuds de contexte, d'objet et d'attribut ne doivent apparaître qu'une seule fois dans le chemin. En
revanche, les nœuds de total peuvent apparaître plusieurs fois.
Exemple 1 :
"UC4/TestNode/PerfAttributUC4"
l
l
l
"UC4" - Nom de contexte
"TestNode" - Noeud d'objet
"PerfAttributUC4" - Noeud d'attribut
Automation Engine
511
Exemple 2 :
"UC4/Summary1/Summary2/TestNode/PerfAttributUC4"
l
l
l
l
l
"UC4" - Nom de contexte
"Summary1" - Noeud de total
"Summary2" - Noeud de total
"TestNode" - Noeud d'objet
"PerfAttributUC4" - Noeud d'attribut
Exemple
Une fois l'exemple suivant exécuté, il existe un nœud de contexte intitulé "UC4", un nœud d'objet intitulé
"Test" et un nœud d'attribut intitulé "TextAttribute" avec le contenu "Valeur".
R3_SET_TEXT_ATTR NODE='UC4/Test/TextAttribute',TEXT='Wert'
Rubriques connexes :
Généralités sur le JCL SAP
R3_SWITCH_OPMODE
Change le mode de fonctionnement dans SAP.
Transaction : RZ03
Interface : UC4
Syntaxe
R3_SWITCH_OPMODE
NAME=...
,SERVER=...
Elément de syntaxe
Description/format
NAME=
Nom d'un mode de fonctionnement défini dans SAP
Format : Littéral de script
Les minuscules ne sont pas converties en majuscules.
SERVER=
Nom d'un Serveur d'applications SAP ou "*" pour tous les Serveurs
d'applications SAP
Format : Littéral de script
Le nom d'un Serveur d'applications SAP doit être saisie sous la forme Hôte_
SID_SYSNR :
Hôte - Nom de l'ordinateur
SID - ID système de SAP
SYSNR - Numéro de l'instance SAP
512
Chapter 4 JCL UC4 pour les applications
Exemple
Le mode de fonctionnement "Fonctionnement de nuit" est appliqué à tous les Serveurs d'applications SAP.
R3_SWITCH_OPMODE NAME='Fonctionnement de nuit',SERVER='*'
Rubriques connexes :
Généralités sur le JCL SAP
4.4.2 SAP BCA
BCA_ACTIVATE_PROCESS
Démarre et surveille un processus qui se déroule dans un réseau de processus distinct.
Transaction : Version SAP Banking : 4.63+
Syntaxe
BCA_ACTIVATE_PROC[ESS]
ID=...
,REPORT=...
[,VARIANT=...]
[,JOBPREFIX=...]
[,MAX_APPL_RC=...]
[,JOBLOG=...]
[,NETWORK_ID=...]
Elément de syntaxe
Description/format
ID=
Identification externe du processus.
Format : Littéral de script
REP[ORT]=
Nom du programme ABAP qui doit être exécuté.
Format : Littéral de script
VAR[IANT]=
Nom de la variante du programme ABAP
Format : littéral de Script
Valeur par défaut : ""
JOBPRE[FIX]=
Préfixe du nom de Job du processus, maximum 18 caractères.
Format : littéral de Script
Valeur par défaut : ""
Les noms des Jobs appartenant au processus se composent du préfixe
indiqué, du numéro courant à 10 caractères (RunID) du Job UC4 et d'un
numéro unique à 3 chiffres.
Automation Engine
MAX_APPL_RC=
513
Valeur de retour maximale de l'application pour la fin normale du processus.
Format : Nombre
Valeur par défaut : "0"
Le processus est considéré comme terminé normalement jusqu'à la valeur de
retour indiquée. Une valeur de retour supérieure conduit à l'interruption du Job
UC4.
JOBL[OG]=
Reprise du log du Job dans le rapport UC4.
Format : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Les logs du Job sont repris dans le rapport UC4.
"NO" = Les logs du Job ne sont pas repris dans le rapport UC4.
NETWORK_ID=
Nom du réseau de processus dans lequel le processus est exécuté.
Format : littéral de Script
Valeur par défaut : ""
Remarques
Le Script permet de démarrer et de surveiller un processus. Le processus est encapsulé dans un réseau de
processus distinct de sorte que seul ce processus soit exécuté dans le réseau de processus. La fin du
processus met également fin au réseau de processus.
La priorité avec laquelle le processus est exécuté dépend de la valeur définie pour la classe de Job. Vous
pouvez sélectionner cette valeur dans l'onglet "SAP" du Job. Par défaut, la classe de Job "C" est utilisée.
Le Script requiert l'indication des paramètres ID= et REPORT=.
Les autres paramètres sont facultatifs. Si l'ABAP à exécuter ne comporte pas de variante, vous pouvez
omettre le paramètre VARIANT= ou ne pas lui attribuer de valeur. Si aucun préfixe n'est indiqué pour les
noms des Jobs du processus, UC4 crée ces derniers automatiquement selon le modèle UC_JOB_
<RunID(10)>_<id_unique(3)>. Les noms de Job uniques ainsi obtenus permettent d'accéder aux logs des
Jobs, une fois le processus terminé. Si vous le souhaitez, vous pouvez reprendre ces derniers dans le
rapport de Job en vue d'effectuer une analyse. Le nom du réseau de processus est lui aussi
automatiquement généré par UC4, sauf si le paramètre NETWORK_ID= est utilisé. Il suit le modèle UC_
NET_<RunID(10)>.
Après la fin normale du processus, le Script se poursuit. Toute interruption du processus provoque
l'interruption immédiate du Job UC4.
Le Script R3_GET_APPLICATIONLOG permet de lire les messages des processus et des réseaux de
processus à partir du log d'application. Par défaut, les messages sont affichés dans le rapport UC4.
Alternativement, les messages peuvent aussi être enregistrés dans un fichier donné.
4.4.3 SAP BW
Généralités sur le JCL SAP BW
Le résumé suivant présente le script JCL pour SAP BW et les interfaces correspondantes.
Elément de script
Elément de script
Description
514
Chapter 4 JCL UC4 pour les applications
BW_ACTIVATE_
CHAIN
Démarre une chaîne de processus, surveille l'exécution et enregistre ses
protocoles dans le rapport d'activation.
BW_ACTIVATE_
INFOPACKAGE
Planifie un ou plusieurs Info Packages pour un démarrage immédiat.
BW_GET_CHAINS
Lit les chaînes de processus à partir du système BW. Les chaînes de
processus disponibles sont enregistrées dans le rapport d'activation ou dans
un fichier.
BW_GET_
INFOPACKAGES
Lit des Info Packages à partir du système BW. Les Info Packages
disponibles sont enregistrés dans le rapport d'activation ou dans un fichier.
BW_RESTART_
CHAIN
Continue une chaîne de processus interrompue.
BW_SET_
CONSTRAINT
Définit un critère de reprise automatique des processus enfants d'une chaîne
de processus.
BW_SET_
INFOPACKAGE_
SELECTION
Définit les paramètres de sélection utilisés pour la lecture des Info Packages
à partir du système BW.
Rubriques connexes :
Généralités sur le JCL UC4 pour les applications
BW_ACTIVATE_CHAIN
Démarre une chaîne de processus, surveille l'exécution et enregistre ses protocoles dans le rapport
d'activation.
Transaction : RSA1
Version SAP BW : à partir de 3.0B avec patch SAPKW30B11
Syntaxe
BW_ACTIVATE_CHAIN
ID=...
[,NOFOUND=...]
[,ERROR=...]
[,PROCESSLOGS=...]
[,RESTART=...]
[,JOBLOGS=...]
[,LONGTEXT=...]
[,REPLICATE=...]
[,STATUSRETRY=...]
[,SCHEDULE=...]
[,SYNCHRONOUS=...]
[,GET_SPOOL=...]
[,COLLECTLOGS=...]
Elément de
syntaxe
Description/format
Automation Engine
ID=
Désignation technique de la chaîne de processus
Format de la valeur : Littéral de script
NOFOUND=
Traitement exécuté si la chaîne de processus n'est pas trouvée.
Format de la valeur : littéral de script
515
Valeurs autorisées : "NORMAL" (valeur par défaut) ou "ABEND"
"NORMAL" = Le script continue, le Job UC4 se termine normalement.
"ABEND" = Le script s'interrompt, le Job UC4 se termine anormalement.
ERROR=
Traitement adopté si une chaîne de processus se termine de façon anormale.
Format : littéral de script
Valeurs autorisées : "ABEND" (valeur par défaut), "IGNORE" ou "SUSPEND"
"ABEND" = Le script est interrompu et le Job UC4 se termine de façon anormale.
"IGNORE" = Le script continue, le Job UC4 se termine normalement.
"SUSPEND" = Le Job reste actif jusqu'à ce qu'une reprise de la chaîne de
processus ou de ses processus enfants fonctionne ou que le Job ait été
interrompu manuellement.
Ce paramètre sert à exécuter une reprise de chaîne de processus ou de ses
processus enfants sans mettre fin au Job. Ainsi, le traitement dans un parent (un
Workflow par exemple) se poursuit.
PROCESSLOGS=
Sortie des protocoles des différents processus d'une chaîne de processus.
Format : littéral de script
Valeurs autorisées : "YES" (valeur par défaut), "NO" ou "ERROR"
"YES" = Les protocoles des différents processus sont joints au protocole de la
chaîne de processus.
"NO" = Seul le protocole de la chaîne de processus est affiché.
"ERROR" = Les protocoles des différents processus sont uniquement affichés
en cas d'erreur.
RESTART=
Nombre de tentatives de reprise d'une chaîne de processus interrompue.
Format : Nombre
Valeur par défaut : "0"
JOBLOGS=
Sortie des protocoles du Job d'arrière-plan du processus.
Format : littéral de script
Valeurs autorisées : "YES" (valeur par défaut), "NO" ou "ERROR"
"YES" = Les protocoles du Job d'arrière-plan du processus sont affichés.
"NON" = Les protocoles du Job d'arrière-plan du processus ne sont pas affichés.
"ERROR" = Les protocoles du Job d'arrière-plan du processus sont uniquement
affichés en cas d'erreur.
LONGTEXT=
Sortie du texte long (texte de diagnostic) d'un message de protocole.
Format : Littéral de script
Valeurs autorisées : "YES", "NO" ou "ERROR" (valeur par défaut)
"ERROR" = Le texte long du message de protocole est uniquement affiché en
cas d'erreur.
"YES" = Le texte long du message de protocole est affiché.
"NO" = Le texte long du message de protocole n'est pas affiché.
516
Chapter 4 JCL UC4 pour les applications
REPLICATE=
Traitement des processus enfant d'une chaîne de processus
Format de la valeur : Littéral de script
Valeurs autorisées : "ALL", "YES" ou "NO" (valeur par défaut)
"ALL" = Répliquer tous les processus enfants d'un Job dans le système UC4 (y
compris ceux qui ont été ignorés). Ils apparaissent alors dans la Fenêtre
d'Activités de l'Interface Utilisateur. De plus, le système UC4 crée des
statistiques et des rapports.
"YES" = Répliquer uniquement les processus enfants interrompus et terminés.
Des statistiques et des rapports sont également créés.
"NO" = Aucune réplication n'a lieu dans le système UC4.
STATUSRETRY=
Nombre de répétitions de la vérification du statut
Format de la valeur : Nombre
Valeur par défaut : "0"
En raison d'un comportement lié à SAP, les chaînes de processus peuvent
présenter l'état terminé pendant un court instant avant de se poursuivre. Si
l'Agent vérifie à ce moment-là le statut de la chaîne, il peut la signaler comme
terminée. Le paramètre STATUSRETRY= empêche que la fin de la chaîne de
processus ne soit reconnue trop tôt. Il définit la fréquence à laquelle le statut est
vérifié. Lorsque la chaîne de processus renvoie toujours le même statut après n
répétitions, elle est signalée comme terminée auprès d'UC4 Automation Engine.
SCHEDULE=
Nouvelle planification des chaînes de processus
Format : Littéral de script
Valeurs autorisées : "YES" (valeur par défaut) ou "NO"
"YES" = La chaîne de processus est nouvellement planifiée.
"NO" = Aucune nouvelle planification de la chaîne de processus. Le démarrage
de la chaîne de processus est accéléré.
SYNCHRONOUS= Exécuter la chaîne de processus de manière synchrone
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Exécution synchrone. La chaîne de processus est exécutée en mode
Dialogue au lieu du mode d'arrière-plan, ce qui entraîne le traitement en série des
processus enfants.
"NO" = Ne pas appliquer l'exécution synchrone.
GET_SPOOL=
Demander la liste Spool de la chaîne de processus démarrée
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Demander la liste Spool. Celle-ci est enregistrée en tant que fichier texte
dans le répertoire que vous définissez dans le fichier INI de l'Agent SAP avec le
paramètre Download_dir= (section [GLOBAL]). Le nom de ce fichier se compose
de la manière suivante :
<SAP-Job-Count>_<Numéro d'étape>_<Numéro de Spool>.txt
Par ailleurs, ce fichier est enregistré comme résultat de Job dans le Job UC4.
"NO" = La liste Spool n'est pas demandée
Les entrées Spool des enfants sont uniquement requises lorsque le paramètre
REPLICATE= est défini soit sur YES, soit sur ALL.
Automation Engine
COLLECTLOGS=
517
Rédiger des rapports des processus enfants de la chaîne de processus activée
dans le rapport de Job
Si les processus enfants sont répliqués, leur protocole est disponible par défaut
dans le rapport du Job ET de la tâche du processus enfant. Ces informations sont
ainsi redondantes dans le rapport de Job et peuvent donc être ignorées.
Valeurs autorisées : "YES" (valeur par défaut) ou "NO"
"YES" - Rédiger le protocole des processus enfants dans le rapport de Job
"NO" - Ne pas enregistrer le protocole des processus enfants de la chaîne de
processus dans le rapport de Job
Veuillez noter que les rapports des processus enfants ne sont pas disponibles
lorsque les paramètres REPLICATE et COLLECTLOGS sont tous les deux
définis sur NO.
Description
Le script démarre une chaîne de processus. Les conditions de démarrage sont tout d'abord déterminées.
Si la chaîne de processus n'est pas immédiatement démarrée, mais qu'elle est démarrée après le premier
Evènement ou à une heure déterminée, les conditions de démarrage sont journalisées.
Une fois la chaîne de processus démarrée, elle est surveillée jusqu'à sa fin. Dans tous les cas, le
protocole de la chaîne de processus est enregistré dans le rapport d'activation. Selon la configuration des
paramètres PROCESSLOGS= et JOBLOGS=, les protocoles des processus ou les protocoles des Jobs
d'arrière-plan sont également affichés.
Si une chaîne de processus est interrompue, le paramètre RESTART= détermine le nombre de tentatives
visant à la continuer.
Exemple
Dans l'exemple, une chaîne de processus précédemment interrogée par l'Utilisateur doit être activée. Les
valeurs des paramètres concernés par le script résultent de cette requête. Elles sont transmises sous
forme de Variables de script.
:BEGINREAD
:
READ &CHAINE#,"ZTEST,ZSBB1,ZSBB2",'Chaîne de processus','ZTEST',M
:
READ&ERROR#,"IGNORER,INTERROMP",'ERROR=','INTERROMP'
:
READ &NOFOUND#,"NORMAL,INTERROMP",'NOFOUND=','NORMAL'
:
READ&LT#,"YES,NO,ERROR",'LONGTEXT=','YES'
:ENDREAD
BW_ACTIVATE_CHAIN
ID='&CHAIN#',ERROR='&ERROR#',NOFOUND='&NOFOUND#',LONGTEXT='&LT#'
BW_ACTIVATE_INFOPACKAGES
Planifie un ou plusieurs Info Packages pour un démarrage immédiat.
Transaction : RSA1
Syntaxe
BW_ACTIVATE_INFOPACK[AGES]
518
Chapter 4 JCL UC4 pour les applications
[NAME=...]
[,ERROR=...]
[,NOFOUND=...]
[,MAXRUNTIME=...]
Elément de syntaxe
Description/format
NAME=
Nom technique d'un Info Package.
Format de la valeur : Littéral de script
ERROR=
Comportement adopté si un Info Package se termine de façon anormale.
Format de la valeur : Littéral de script
Valeur autorisée : "ABEND" (valeur par défaut) ou "IGNORE"
"ABEND" - Le script s'interrompt, le Job UC4 se termine anormalement.
"IGNORE" - Le script continue, le Job UC4 se termine normalement.
NOFOUND=
Comportement adopté si l'Info Package n'est pas trouvé.
Format de la valeur : Littéral de script
Valeurs autorisées : "NORMAL" (valeur par défaut) ou "ABEND"
"NORMAL" = Le script continue, le Job UC4 se termine normalement.
"ABEND" = Le script s'interrompt, le Job UC4 se termine anormalement.
MAXRUNTIME=
Durée maximale, en secondes, pendant laquelle les Info Packages planifiés
sont surveillés.
Format de la valeur : nombre
Valeur par défaut : 86400
Remarques
Ce script suppose que l'Info Package considéré n'est pas planifié. Vous pouvez déterminer le nom
technique de l'Info Package à l'aide de BW_GET_INFOPACKAGES. Le script est actif tant que le Job de
chargement en résultant n'est pas terminé dans SAP BW. Si ce Job ne se termine pas normalement, le
Job UC4 est interrompu.
Le script peut également être utilisé sans le paramètre NAME=. Il est ainsi possible de planifier
simultanément plusieurs Info Packages pour un démarrage immédiat. Les paramètres NOFOUND= et
ERROR= permettent de déterminer le comportement adopté par UC4 si les Info Packages sont
introuvables ou que l'un d'entre eux se termine de façon anormale.
Si les Info Packages sont définis manuellement sur le statut de qualité "Y" (jaune) dans Administrator
Workbench, le Job UC4 qui les a planifiés ne se termine jamais. Pour indiquer pendant combien de temps
les Info Packages planifiés doivent être surveillés, utilisez le paramètre MAXRUNTIME=. En cas de
dépassement du délai fixé, le Job UC4 est interrompu ou se poursuit, conformément à la valeur du
paramètre ERROR=.
Si vous utilisez les sources de données et les services de transformation BW 7.x (SAP NetWeaver
04s et versions supérieures), vous devez démarrer un transfert de données après le chargement des Info
Packages. Dans ce cas, nous vous recommandons de définir des chaînes de processus adaptées
dans BW et de les contrôler à l'aide de BW_ACTIVATE_CHAIN.
Automation Engine
519
Exemples
Le premier exemple planifie un Info Package pour un démarrage immédiat. L'attente de la demande se
termine au bout d'une heure.
BW_ACTIVATE_INFOPACKAGE NAME="ZPAK_
6LX4XTMC3RJ2DF4F09NFIJW98",MAXRUNTIME=3600
Le second exemple sélectionne tous les Info Packages dont le texte long contient le modèle "UC4:*Text*".
Les Info Packages trouvés sont ensuite planifiés pour un démarrage immédiat. Toute erreur entraîne
l'interruption du Job UC4.
BW_SET_INFOPACKAGE_SELECTION
SELNAME='TEXTLONG',SIGN='I',OPTION='CP',LOW='UC4:*Text*'
BW_ACTIVATE_INFOPACKAGES NOFOUND='ABEND',ERROR='ABEND'
BW_GET_CHAINS
Lit les chaînes de processus à partir du système BW. Les chaînes de processus disponibles sont
enregistrées dans le rapport d'activation ou dans un fichier.
Transaction : RSA1
Version SAP BW : à partir de la version 3.0B avec le patch SAPKW30B11
Syntaxe
BW_GET_CHAIN[S]
[FILE=...]
[,ID=...]
[,TEXT=...]
[,ENCODING=...]
Elément de
syntaxe
Description/format
FILE=
Nom du fichier dans lequel les chaînes de processus disponibles doivent être
enregistrées.
Format de la valeur : littéral de Script
Valeur par défaut :
Le résultat n'est pas affiché dans le rapport si ce paramètre est utilisé.
ID=
Désignation technique de la chaîne de processus
Format de la valeur : littéral de Script
Valeur par défaut :
Vous pouvez utiliser des caractères génériques pour la sélection.
TEXT=
Description de la chaîne de processus.
Format de la valeur : littéral de Script
Valeur par défaut :
Vous pouvez utiliser des caractères génériques pour la sélection.
520
Chapter 4 JCL UC4 pour les applications
ENCODING= Codage pour le fichier en sortie créé (paramètre FILE=).
Exemple : UTF-8
Valeur par défaut : ISO-8859-1
Si un codage non pris en charge ou un codage non valide est indiqué, cela entraîne
l'interruption du Job avec un message d'erreur correspondant.
Dans les formes SAP, un assistant de saisie qui répertorie tous les codages pris en
charge est disponible pour ce champ.
Remarques
Toutes les chaînes de processus disponibles sont écrites dans l'état d'activation ou dans le fichier indiqué.
Le fichier est présenté de manière structurée. La première colonne (25 caractères) contient le nom
technique (ID) de la chaîne de processus, la deuxième (60 caractères), son texte long. La troisième
colonne (1 caractère) indique la version de l'objet. Les versions des objets ont la signification suivante :
l
l
l
l
A = Actif
M = Révisé
D = Contenu
N = Nouveau
Exemple
Les chaînes de processus disponibles sont extraites et écrites dans un fichier.
BW_GET_CHAINS FILE='..\TEMP\CHAINS.TXT',TEXT='Test*'
BW_GET_INFOPACKAGES
Lit des Info Packages à partir du système BW. Les Info Packages disponibles sont enregistrés dans le
rapport d'activation ou dans un fichier.
Transaction : RSA1
Syntaxe
BW_GET_INFOPACK[AGES]
[FILE=...]
Elément de syntaxe
Description/format
FILE=
Nom du fichier (accompagné de son chemin d'accès complet) dans lequel les
Info Packages disponibles sont enregistrés. Remarques
Ce script suppose que les Info Packages ont été au préalable sélectionnés à l'aide de BW_SET_
INFOPACKAGE_SELECTION. Tous les Info Packages disponibles sont écrits dans le rapport
d'activation ou dans le fichier indiqué. Le fichier est présenté de manière structurée. La première colonne
(31 caractères) contient le nom technique de l'Info Package, la seconde (61 caractères), son texte long.
Automation Engine
521
Une fois le traitement du script terminé, toutes les tables de sélection sont supprimées.
Exemple
Dans l'exemple, tous les Info Packages dont le texte long est "Pays*" (à l'exception de ceux dont le nom
d'InfoSource est "0COUNTRY") sont sélectionnés et écrits dans un fichier.
BW_SET_INFOPACKAGE_SELECTION SELNAME="TEXTLONG",LOW="Pays*",OPTION=CP
BW_SET_INFOPACKAGE_SELECTION SELNAME="INFOSOURCE",LOW="0COUNTRY",SIGN=E
BW_GET_INFOPACKAGES FILE="c:\temp\infopackages.txt"
BW_RESTART_CHAIN
Continue une chaîne de processus interrompue.
Transaction : RSA1
Version SAP BW : à partir de 3.0B avec patch SAPKW30B11
Syntaxe
BW_RESTART_CHAIN
ID=...
,LOGID=...
[,NOFOUND=...]
[,ERROR=...]
[,PROCESSLOGS=...]
[,JOBLOGS=...]
[,LONGTEXT=...]
[,REPLICATE=...]
[,GET_SPOOL=...]
[,COLLECTLOGS=...]
Elément de
syntaxe
Description/format
ID=
Désignation technique de la chaîne de processus
Format de la valeur : Littéral de script
LOGID=
ID du log (25caractères)
Format de la valeur : Littéral de script
NOFOUND=
Comportement adopté si la chaîne de processus est introuvable.
Format de la valeur : littéral de script
Valeurs autorisées : "NORMAL" (valeur par défaut) ou "ABEND"
"NORMAL" = Le script continue, le Job UC4 se termine normalement.
"ABEND" = Le script s'interrompt, le Job UC4 se termine anormalement.
522
Chapter 4 JCL UC4 pour les applications
ERROR=
Comportement adopté si la chaîne de processus se termine anormalement.
Format de la valeur : littéral de script
Valeurs autorisées : "ABEND" (valeur par défaut), "IGNORE" ou "SUSPEND"
"ABEND" = Le script est interrompu et le Job UC4 se termine de façon anormale.
"IGNORE" = Le script continue, le Job UC4 se termine normalement.
"SUSPEND" = Le Job reste actif jusqu'à ce qu'une reprise de la chaîne de
processus ou de ses processus enfants fonctionne ou que le Job ait été
interrompu manuellement.
Ce paramètre sert à exécuter une reprise de chaîne de processus ou de ses
processus enfants sans mettre fin au Job. Ainsi, le traitement dans un parent (un
Workflow par exemple) se poursuit.
PROCESSLOGS= Sortie des protocoles des différents processus d'une chaîne.
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" (valeur par défaut), "NO" ou "ERROR"
"YES" = Les protocoles des différents processus sont joints au protocole de la
chaîne de processus.
"NO" = Seul le protocole de la chaîne de processus est affiché.
"ERROR" = Les protocoles des différents processus sont uniquement affichés en
cas d'erreur.
JOBLOGS=
Sortie des protocoles du Job d'arrière-plan du processus.
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" (valeur par défaut), "NO" ou "ERROR"
"YES" = Les protocoles du Job d'arrière-plan du processus sont affichés.
"NON" = Les protocoles du Job d'arrière-plan du processus ne sont pas affichés.
"ERROR" = Les protocoles du Job d'arrière-plan du processus sont uniquement
affichés en cas d'erreur.
LONGTEXT=
Sortie du texte long (texte de diagnostic) d'un message de protocole.
Format de la valeur : Littéral de script
Valeurs autorisées : "YES", "NO" ou "ERROR" (valeur par défaut)
"ERROR" = Le texte long du message de protocole est uniquement affiché en cas
d'erreur.
"YES" = Le texte long du message de protocole est affiché.
"NO" = Le texte long du message de protocole n'est pas affiché.
REPLICATE=
Traitement des processus enfant d'une chaîne de processus
Format de la valeur : Littéral de script
Valeurs autorisées : "ALL", "YES" ou "NO" (valeur par défaut)
"ALL" = Répliquer tous les processus enfants d'un Job dans le système UC4 (y
compris ceux qui ont été ignorés). Ils apparaissent alors dans la Fenêtre
d'Activités de l'Interface Utilisateur. De plus, le système UC4 crée des
statistiques et des rapports.
"YES" = Répliquer uniquement les processus enfants interrompus et terminés.
Des statistiques et des rapports sont également créés.
"NO" = Aucune réplication n'a lieu dans le système UC4.
Automation Engine
GET_SPOOL=
523
Demander la liste Spool de la chaîne de processus démarrée
Format de la valeur : Littéral de script
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" = Demander la liste Spool. Celle-ci est enregistrée en tant que fichier texte
dans le répertoire que vous définissez dans le fichier INI de l'Agent SAP avec le
paramètre Download_dir= (section [GLOBAL]). Le nom de ce fichier se compose
de la manière suivante :
<SAP-Job-Count>_<Numéro d'étape>_<Numéro de Spool>.txt
Par ailleurs, ce fichier est enregistré comme résultat de Job dans le Job UC4.
"NO" = La liste Spool n'est pas demandée
Les entrées Spool des enfants sont uniquement requises lorsque le paramètre
REPLICATE= est défini soit sur YES, soit sur ALL.
COLLECTLOGS=
Rédiger des rapports des processus enfants de la chaîne de processus activée
dans le rapport de Job
Si les processus enfants sont répliqués, leur protocole est disponible par défaut
dans le rapport du Job ET de la tâche du processus enfant. Ces informations sont
ainsi redondantes dans le rapport de Job et peuvent donc être ignorées.
Valeurs autorisées : "YES" (valeur par défaut) ou "NO"
"YES" - Rédiger le protocole des processus enfants dans le rapport de Job
"NO" - Ne pas enregistrer le protocole des processus enfants de la chaîne de
processus dans le rapport de Job
Veuillez noter que les rapports des processus enfants ne sont pas disponibles
lorsque les paramètres REPLICATE et COLLECTLOGS sont tous les deux
définis sur NO.
Description
Ce script continue une chaîne de processus interrompue. Le paramètre LOGID= permet d'identifier de
façon univoque une exécution donnée de cette chaîne de processus. L'ID de log peut être déterminé à
partir du rapport d'un Job UC4 à l'aide de PREP_PROCESS_REPORT.
Une fois la chaîne de processus poursuivie, elle est surveillée jusqu'à sa fin. Dans tous les cas, le
protocole de la chaîne de processus est enregistré dans le rapport d'activation. Selon la configuration des
paramètres PROCESSLOGS= et JOBLOGS=, les protocoles des processus ou les protocoles des Jobs
d'arrière-plan sont également affichés.
Exemple
Dans l'exemple, le script détermine, lors du post-traitement d'un Job, si la chaîne de processus "ZSBB1"
est interrompue (au moyen du numéro d'erreur). Dans ce cas, l'ID de log à 25 caractères est enregistré
dans une variable.
:SET &HND# = PREP_PROCESS_REPORT
(,,PLOG,'*U2004111*','COL=DELIMITER',"DELIMITER=@'@")
:SET &LOGID# = ''
:PROCESS &HND#
:
SET &LOGID# = GET_PROCESS_LINE(&HND#,4)
:ENDPROCESS
524
Chapter 4 JCL UC4 pour les applications
:IF &LOGID# <> ''
:
PUT_VAR VARA.CHAINS,'ZSBB1',&LOGID#
:ENDIF
Un autre Job lit l'ID du log à partir de la variable et redémarre la chaîne de processus pour poursuivre le
traitement.
:SET &LOGID = GET_VAR(VARA.CHAINS,ZSBB1)
BW_RESTART_CHAIN ID='ZSBB1',LOGID='&LOGID#',ERROR='ABEND',NOFOUND='NORMAL'
BW_SET_INFOPACKAGE_SELECTION
Définit les paramètres de sélection utilisés pour la lecture des Info Packages à partir du système BW.
Transaction : RSA1
Syntaxe
BW_SET_INFOPACKAGE_SEL[ECTION]
SELNAME=...
,LOW=...
[,HIGH=...]
[,SIGN=...]
[,OPTION=...]
[,MODE=...]
Elément de syntaxe
Description/format
SELNAME=
Nom d'une table de sélection pour les Info Packages.
Valeurs autorisées : "TEXTLONG", "INFOSOURCE", "SOURCESYSTEM",
"DATASOURCE"
"TEXTLONG" = sélection par textes longs
"INFOSOURCE" = sélection par InfoSources
"SOURCESYSTEM" = sélection par systèmes source
"DATASOURCE" = sélection par sources de données
LOW=
Limite inférieure pour la table de sélection choisie.
HIGH=
Limite supérieure pour la table de sélection choisie.
SIGN=
Indicateur de la sélection.
Valeurs autorisées : "I" (valeur par défaut) et "E"
"I" = Les Info Packages trouvés sont inclus.
"E" = Les Info Packages trouvés sont exclus.
Automation Engine
OPTION=
525
Option de sélection
Valeurs autorisées : "EQ" (valeur par défaut), "NE", "GT", "GE", "LT", "LE",
"CP", "NP", "BT", "NB"
"EQ" - égal
"NE" - non égal à
"GT" - plus grand que
"GE" - plus grand ou égal
"LT" - plus petit que
"LE" - plus petit ou égal
"CP" - contient un modèle (avec des caractères de remplacement)
"NP" - ne contient pas de modèle
"BT" - intervalle (saisir aussi HIGH)
"NB" - hors de l'intervalle (saisir aussi HIGH)
MODE=
Mode de traitement de la sélection.
Valeurs autorisées : "R" (valeur par défaut) et "A"
"R" - La sélection remplace les entrées de la table de sélection.
"A" - La sélection est ajoutée à la table de sélection.
Remarques
Ce script n'entraîne pas l'exécution d'une fonction SAP. Il prépare la lecture ultérieure des Info Packages à
partir du système BW. Les Info Packages peuvent être sélectionnés de quatre façons différentes : texte
long, InfoSource, système source et source de données.
Au départ, les tables de sélection de chaque Job UC4 du système cible SAP BW sont vides. Elles se
remplissent petit à petit, du fait de l'utilisation répétée du script.
Les limites inférieure et supérieure se rapportent à la table de sélection choisie. Si, par exemple,
"TXTLONG" a été indiqué, ces paramètres sélectionnent le texte long des Info Packages disponibles. Les
caractères génériques "*" et "?" peuvent être utilisés pour les limites supérieures et inférieures. "*" signifie
n'importe quelle chaîne de caractères et "?" exactement un caractère. La précision d'une limite supérieure
n'a de sens que si "BT" ou "NB" a été indiqué comme option de sélection.
La limite supérieure, l'indicateur de la sélection, l'option de sélection et le mode de traitement sont des
paramètres facultatifs du script.
Le script SET_INFOPACKAGE_SELECTION a été renommé BW_SET_INFOPACKAGE_SELECTION
dans la version 3.0. Toutefois, vous pouvez continuer à utiliser l'ancien nom.
Exemple
Dans l'exemple, tous les Info Packages dont le texte long est "Pays*" (à l'exception de ceux dont le nom
d'InfoSource est "0COUNTRY") sont sélectionnés.
BW_SET_INFOPACKAGE_SELECTION SELNAME="TEXTLONG",OPTION="CP",LOW="Pays*"
BW_SET_INFOPACKAGE_SELECTION SELNAME="INFOSOURCE",LOW="0COUNTRY",SIGN=E
526
Chapter 4 JCL UC4 pour les applications
4.4.4 SAP XI
XI_GET_CHANNEL
Enumère les canaux de communication.
Syntaxe
XI_GET_CHANNEL
[CHANNEL=...]
[,SERVICE=...]
[,PARTY=...]
[,STATE=...]
[,ACTSTATE=...]
[,NOFOUND=...]
Elément de syntaxe
Description/format
CHANNEL=
Nom du canal de communication
Format de la valeur : Littéral de script
Valeur par défaut : "*"
Vous pouvez utiliser le caractère générique "*" dans le nom de canal indiqué.
SERVICE=
Nom du service
Format de la valeur : Littéral de script
Valeur par défaut : "*"
Vous pouvez utiliser le caractère générique "*" dans le nom de service
indiqué.
PARTY=
Nom du partenaire
Format de la valeur : Littéral de script
Valeur par défaut : "*"
Vous pouvez utiliser le caractère générique "*" dans le nom de partenaire
indiqué.
STATE=
Statut du canal de communication
Format de la valeur : Littéral de script
Valeurs possibles :
"*" (valeur par défaut)
"ERROR"
"OK"
"INACTIVE"
"UNKNOWN"
"UNREGISTERED"
ACTSTATE=
Statut du canal de communication
Valeurs autorisées : "*" (valeur par défaut), "STARTED" et "STOPPED"
Automation Engine
NOFOUND=
527
Comportement adopté si aucun canal de communication correspondant aux
critères de filtrage n'est trouvé.
Format de la valeur : Littéral de script
Valeurs autorisées : "NORMAL" (valeur par défaut) ou "ABEND"
"NORMAL" = Le Job UC4 se poursuit.
"ABEND" = Le Job UC4 se termine anormalement.
Remarques
La fonction énumère, dans le rapport du Job, les canaux de communication qui correspondent aux critères
de filtrage définis. Par défaut, les paramètres de filtrage ne restreignent pas la sélection des canaux de
communication.
Le paramètre NOFOUND= vous permet d'interrompre le Job si les conditions de filtrage ne correspondent
à aucun canal de communication.
Le résultat est enregistré sous la forme d'un document XML dans le rapport de Job. Vous pouvez le lire à
l'aide des Scripts pour les documents XML.
Exemple de sortie XML dans le rapport :
<Report>
<Channels>
<Channel>
<Party/>
<Service>FileListReceiver</Service>
<ChannelName>FileListReceiverChannel</ChannelName>
<ChannelID>85e07c39f9b831d1817f3c4bec0af8ff</ChannelID>
<ActivationState>STARTED</ActivationState>
<ChannelState>OK</ChannelState>
</Channel>
<Channel>
<Party/>
<Service>X64_107</Service>
<ChannelName>GeneratedReceiverChannel_RFC</ChannelName>
<ChannelID>19729e747d023ff7a27d32d3f566ed79</ChannelID>
<ActivationState>STARTED</ActivationState>
<ChannelState>OK</ChannelState>
</Channel>
<Channel>
<Party/>
<Service>SenderListe</Service>
<ChannelName>File_Sender_Liste</ChannelName>
<ChannelID>8bdda1b7041b37efa313219ae7029906</ChannelID>
<ActivationState>STARTED</ActivationState>
<ChannelState>OK</ChannelState>
</Channel>
</Channels>
</Report>
Exemple
L'exemple répertorie tous les canaux de communication inactifs.
528
Chapter 4 JCL UC4 pour les applications
XI_GET_CHANNEL STATE='INACTIVE'
Dans ce Script, tous les canaux de communication dont le nom commence par "File" et qui sont en cours
d'exécution sont répertoriés dans le rapport.
XI_GET_CHANNEL CHANNEL='File*',ACTSTATE='STARTED'
Rubriques connexes :
XI_SET_CHANNEL
XI_SET_CHANNEL
Démarre et arrête les canaux de communication.
Syntaxe
XI_SET_CHANNEL
ACTION=...
[CHANNEL=...]
[,SERVICE=...]
[,PARTY=...]
[,NOFOUND=...]
[,ERROR=...]
Elément de syntaxe
Description/format
ACTION=
Action appliquée au canal de communication
Valeurs autorisées : "START" et "STOP"
CHANNEL=
Nom du canal de communication
Format de la valeur : Littéral de script
Valeur par défaut : "*"
Vous pouvez utiliser le caractère générique "*" dans le nom de canal indiqué.
SERVICE=
Nom du service
Format de la valeur : Littéral de script
Valeur par défaut : "*"
Vous pouvez utiliser le caractère générique "*" dans le nom de service
indiqué.
PARTY=
Nom du partenaire
Format de la valeur : Littéral de script
Valeur par défaut : "*"
Vous pouvez utiliser le caractère générique "*" dans le nom de partenaire
indiqué.
Automation Engine
NOFOUND=
529
Comportement adopté si aucun canal de communication correspondant aux
critères de filtrage n'est trouvé.
Format de la valeur : Littéral de script
Valeurs autorisées : "NORMAL" ou "ABEND" (valeur par défaut)
"NORMAL" = Le Job UC4 se poursuit.
"ABEND" = Le Job UC4 se termine anormalement.
ERROR=
Comportement adopté si l'action appliquée à l'un des canaux de
communication ne peut pas être exécutée.
Valeurs autorisées : "IGNORE" ou "ABEND" (valeur par défaut)
"IGNORE" = Le Job UC4 se poursuit.
"ABEND" = Le Job UC4 se termine anormalement.
Remarques
La fonction permet de démarrer ou d'arrêter un ou plusieurs canaux de communication. Utilisez les
paramètres CHANNEL=, SERVICE= et PARTY= pour indiquer un canal de communication précis ou le
filtre pour désigner plusieurs canaux de communication.
Le paramètre ERROR= permet d'interrompre le Job s'il est impossible de démarrer ou d'arrêter l'un des
canaux de communication sélectionnés. En raison du comportement des interfaces, l'Agent applique
néanmoins l'action définie dans le paramètre ACTION= à tous les autres canaux de communication.
Les informations sur le canal de communication qui n'a pas pu être traité sont enregistrées sous la forme
d'un document XML dans le rapport de Job. Vous pouvez le lire à l'aide des Scripts pour les documents
XML.
Exemple de sortie XML dans le rapport :
<Report>
<Channels>
<Channel>
<Party/>
<Service>SenderListe</Service>
<ChannelName>SenderChannel</ChannelName>
<ChannelID> f2d7791276e8388b995afd2d7a22e1b0</ChannelID>
<ActivationState>STARTED</ActivationState>
<ChannelState>OK</ChannelState>
<ErrorInformation>
com.sap.aii.af.service.administration.impl.WrongAutomationModeException:
The channel "/SenderListe/SenderChannel (GUID
f2d7791276e8388b995afd2d7a22e1b0)"
is configured to use an automation mode not compatible with the type of the
current principal (WSUSER). The channel was not started. Change the
channels
automation mode and repeat the administrative action.
</ErrorInformation>
</Channel>
</Channels>
</Report>
530
Chapter 4 JCL UC4 pour les applications
Exemple
L'exemple démarre un canal de communication sélectionné par le biais de son nom et de celui du service.
XI_SET_CHANNEL ACTION='START',CHANNEL=' File_Sender_Liste',SERVICE='
SenderListe',PARTY='*'
Dans ce Script, un canal de communication est arrêté.
XI_SET_CHANNEL ACTION='STOP',CHANNEL='SenderChannel',SERVICE='
SenderListe',PARTY='*'
Rubriques connexes :
XI_GET_CHANNEL
4.5 Siebel
4.5.1 SI_START_TASK
Exécute des commandes dans Siebel.
Syntaxe
SI_START_TASK CMD=Commande Siebel
Elément de syntaxe
Description/format
CMD=
Commande Siebel
Format de la valeur : Littéral de script
Remarques
Pour pouvoir exécuter des commandes dans Siebel, vous devez les entrer dans l'onglet Traitement en
utilisant le Script SI_START_TASK. La commande Siebel est par la suite transmise au Siebel Server
Manager (via son paramètre /c) et ainsi exécutée dans Siebel.
Chaque ligne de Script contenant "SI_START_TASK" est une Tâche particulière dans Siebel. Attention :
la commande Siebel doit impérativement commencer par "start task" pour qu'une surveillance de la Tâche
(par exemple : interruption, poursuite) soit possible. Si vous utilisez "run task", le Job Siebel est interrompu
et un message d'erreur s'affiche.
Exemple :
SI_START_TASK CMD="start task for component EIM server ESERV01 with
Config=apd_contacts_ok.ifb, LovLang=DEU, ErrorFlags=1, SQLFlags=8,
TraceFlags=1"
Rubriques connexes :
Généralités sur le JCL UC4 pour les applications
Automation Engine
531
5 JCL de UC4 pour JMX
5.1 Généralités sur le JCL JMX
La documentation suivante vous présente tous les éléments de script JCL pour JMX et les types de
fichiers pris en charge.
Les éléments de script prennent en charge les types de données suivants lors des transferts de valeurs :
l
l
l
l
l
l
l
l
l
l
l
l
java.lang.String
java.lang.Integer
java.lang.Byte
java.lang.Float
java.lang.Double
java.lang.Short
java.lang.Long
java.lang.BigInteger
java.lang.Boolean
java.lang.BigDecimal
java.lang.Character
javax.management.openmbean.CompositeData
Pour les codes retour des scripts, vous pouvez utiliser des tableaux ou les deux types de données
complexes ci-dessous :
l
l
javax.management.openmbean.CompositeData
javax.management.openmbean.TabularData
Les scripts écrivent leurs résultats dans le rapport. Ces derniers peuvent alors être lus à l'aide de PREP_
PROCESS_REPORT.
Elément de script
Elément de script
Description
JMX_COMPOSITE_
ADD
Rassemble des valeurs pour un paramètre.
JMX_CREATE_
MBEAN
Enregistre un MBean.
JMX_GET_AGENT
Détermine l'ID Agent du serveur MBean.
JMX_GET_
ATTRIBUTE
Indique la valeur d'un ou de tous les attributs d'un MBean.
JMX_GET_INFO
Affiche des informations sur un MBean.
JMX_INVOKE
Exécute une fonction d'un MBean.
JMX_QUERY_NAMES Répertorie les MBeans enregistrés.
JMX_SET_
ATTRIBUTE
Définit un attribut d'un MBean.
JMX_WAIT_FOR_
NOTIFICATION
Attend une Alerte du MBean.
532
Chapter 5 JCL de UC4 pour JMX
JMX_UNREGISTER_
MBEAN
Supprime un MBean déjà enregistré.
Rubriques connexes :
Onglet Forme (JMX)
5.2 JMX_COMPOSITE_ADD
Rassemble des valeurs pour un paramètre.
Syntaxe
JMX_COMPOSITE_ADD NAME=..., KEY=..., VALUE=...
Elément de syntaxe
Description/format
NAME=
Nom du paramètre
KEY=
Concept clé
La désignation que vous pouvez choisir ici dépend du MBean auquel vous
souhaitez transmettre le paramètre.
VALUE=
Valeur qui doit être enregistrée sous le concept clé
Remarques
De nombreux MBeans ne requièrent pas une seule mais toute une série de valeurs pour leurs paramètres.
JMX_COMPOSITE_ADD permet d'enregistrer plusieurs valeurs sous un nom de paramètre. Vous ne
pouvez utiliser ces valeurs qu'au sein du Job.
Les valeurs de paramètre sont conservées jusqu'à la fin du Job et peuvent être utilisées pour n'importe
quel MBean.
La ligne suivante définit une seule valeur.
JMX_COMPOSITE_ADD NAME="parameter",KEY="CUSTOMERSTATE",VALUE="Partner"
Si un concept clé est associé à plusieurs valeurs, celles-ci sont séparées par le signe ";".
JMX_COMPOSITE_ADD NAME="parameter",KEY="COUNTRY",VALUE="USA;India"
Le signe ";" peut également figurer au sein d'une valeur. Dans ce cas, ajoutez une barre oblique inverse "\"
juste avant le point-virgule. Ce dernier ne sera alors pas interprété comme un caractère de séparation.
Les valeurs minimale et maximale des plages sont également séparées par un point-virgule (";").
JMX_COMPOSITE_ADD NAME="parameter",KEY="ID",VALUE="33333;44444"
Les formats utilisés pour les dates, les heures et les dates accompagnées de l'heure sont respectivement
AAAAMMJJ, HHMMSS et AAAAMMJJHHMMSS.
JMX_COMPOSITE_ADD NAME="parameter",KEY="TIME",VALUE="121516"
JMX_COMPOSITE_ADD NAME="parameter",KEY="DATEOPENED",VALUE="19990616120000"
Pour les valeurs de type booléen, utilisez "true" ou "false".
JMX_COMPOSITE_ADD NAME="parameter",KEY="REQUEST",VALUE="true"
Automation Engine
533
Pour les devises, indiquez seulement la valeur numérique.
JMX_COMPOSITE_ADD NAME="parameter",KEY="CURRENCY",VALUE="1000.00"
Entrez la valeur sur plusieurs lignes directement dans l'onglet "Script". La ligne ne doit plus être
modifiée dans l'onglet Forme, car il ne prend pas en charge les textes de plusieurs lignes et seule la
première ligne serait reprise.
Evitez les caractères spéciaux et les signes diacritiques dans les noms de paramètre et les valeurs.
L'Agent JMX envoie toutes les requêtes du service Web à UTF-8. Le bon déroulement de la conversion du
JCL dépend de l'encodage défini par l'administrateur UC4 dans les Variables UC4 UC_SYSTEM_
SETTINGS dans la Clef XML_ENCODING. L'Agent part du principe que la valeur "ISO-8859-15" est
indiquée.
Exemple
Dans l'exemple, le paramètre "rapport" du MBean de Crystal Reports est complété. Les valeurs suivantes
sont définies : format de fichier, expéditeur d'e-mail et objet d'e-mail.
JMX_COMPOSITE_ADD NAME="report",KEY="FORMAT",VALUE="EXCEL"
JMX_COMPOSITE_ADD NAME="report",KEY="MAIL_SUBJECT",VALUE="client à Vienne"
JMX_COMPOSITE_ADD NAME="report",KEY="MAIL_FROM",VALUE="[email protected]"
Rubriques connexes :
JCL de UC4 pour JMX
5.3 JMX_CREATE_MBEAN
Enregistre un MBean.
Syntaxe
JMX_CREATE_MBEAN CLASSNAME=... [, NAME=...] [, LOADERNAME=...]
[EXISTS=...]
Elément de syntaxe
Description/format
CLASSNAME=
Nom de la classe du MBean.
NAME=
Nom sous lequel le MBean doit être enregistré.
Ne précisez pas ce paramètre si le MBean met en œuvre l'interface
MBeanRegistration.
LOADERNAME=
Nom de la classe de chargement.
Par défaut, le Default Loader Repository est utilisé pour le chargement du
MBean.
EXISTS=
Comportement adopté par le Job UC4 si le MBean est déjà enregistré.
Valeurs possibles: "IGNORE" et "ABORT" (valeur par défaut)
"IGNORE" - Le Script du Job JMX continu.
"ABORT" - Le Job JMX s'interrompt.
534
Chapter 5 JCL de UC4 pour JMX
Remarques
Le Script génère une instance de la classe indiquée et l'enregistre sur le serveur MBean avec le nom
d'objet. Le paramètre LOADERNAME= peut contenir le nom d'objet de la classe de chargement à utiliser
pour charger la classe indiquée.
Exemple
JMX_CREATE_MBEAN CLASSNAME=com.uc4.mbeans.DatabaseExample,
NAME=UC4:type=DatabaseExample
Rubriques connexes :
JCL de UC4 pour JMX
5.4 JMX_GET_AGENT
Détermine l'ID Agent du serveur MBean. Détermine l'ID Agent du serveur MBean.
Syntaxe
JMX_GET_AGENT [ALL=...]
Elément de syntaxe
Description/format
ALL=
Liste d'ID Agent
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" - Liste incluant tous les ID Agent du serveur MBean en cours
d'exécution
"NO" - Envoie l'ID Agent du serveur MBean utilisé
Exemple
JMX_GET_AGENT ALL=YES
Rubriques connexes :
JCL de UC4 pour JMX
5.5 JMX_GET_ATTRIBUTE
Indique la valeur d'un ou de tous les attributs d'un MBean
Syntaxe
JMX_GET_ATTRIBUTE MBEAN=... [, ATTRIBUTE=...]
Elément de syntaxe
Description/format
MBEAN=
Nom d'objet du MBean.
ATTRIBUTE=
Nom de l'attribut.
Automation Engine
535
Remarques
Indiquez l'attribut dont vous souhaitez connaître la valeur. Si vous ne précisez aucun attribut, la fonction
renvoie les valeurs de tous les attributs du MBean.
L'administrateur UC4 définit dans le fichier INI de l'Agent avec le paramètre search_all= si la fonction
recherche le MBean sur tous les serveurs MBean locaux ou seulement sur celui relié à l'Agent concerné.
Exemple
JMX_GET_ATTRIBUTE MBEAN="Catalina:type=GlobalRequestProcessor,name=http80", ATTRIBUTE=processingTime
Rubriques connexes :
JCL de UC4 pour JMX
5.6 JMX_GET_INFO
Affiche des informations sur un MBean.
Syntaxe
JMX_GET_INFO MBEAN=... [SHORTINFO=...]
Elément de syntaxe
Description/format
MBEAN=
Nom d'objet du MBean.
SHORTINFO=
Volume des informations.
Valeurs autorisées : "YES" et "NO" (valeur par défaut)
"YES" - La version courte des informations est affichée.
"NO" - Les informations sont affichées complètement.
Remarques
Le Script détermine la description du MBean et dresse la liste des attributs, des opérations et des Alertes.
L'administrateur UC4 définit dans le fichier INI de l'Agent avec le paramètre search_all= si la fonction
recherche le MBean sur tous les serveurs MBean locaux ou seulement sur celui relié à l'Agent concerné.
Exemple
JMX_GET_INFO MBEAN="Catalina:type=GlobalRequestProcessor,name=http-80"
Rubriques connexes :
JCL de UC4 pour JMX
5.7 JMX_INVOKE
Exécute une méthode d'un MBean.
536
Chapter 5 JCL de UC4 pour JMX
Syntaxe
JMX_INVOKE MBEAN=..., OPERATIONNAME=..., PARAMS=... [, SIGNATURE=...]
Elément de syntaxe
Description/format
MBEAN=
Nom d'objet du MBean.
OPERATIONNAME=
Nom de l'opération qui doit être exécutée.
PARAMS=
Liste des paramètres.
Si vous indiquez plusieurs paramètres, vous devez les séparer par des
virgules.
SIGNATURE=
Si le MBean indiqué comporte plusieurs méthodes portant le nom défini par le
paramètre OPERATIONNAME=, vous devez transmettre la signature de la
méthode à exécuter à l'aide de ce paramètre.
Remarques
L'élément de script exécute la fonction d'un MBean et transmet son paramètre. Si le MBean comporte
plusieurs fonctions, vous pouvez indiquer une méthode précise à l'aide du paramètre SIGNATURE=.
L'administrateur UC4 définit dans le fichier INI de l'Agent avec le paramètre search_all= si la fonction
recherche le MBean sur tous les serveurs MBean locaux ou seulement sur celui relié à l'Agent concerné.
Exemple
JMX_INVOKE MBEAN=UC4:type=DatabaseExample, OPERATIONNAME=selectInvoice,
PARAMS="1996-07-04,1996-07-10",
SIGNATURE="java.lang.String,java.lang.String"
Rubriques connexes :
JCL de UC4 pour JMX
Exemples
Exécution d'un MBeans
5.8 JMX_QUERY_NAMES
Répertorie les MBeans enregistrés.
Syntaxe
JMX_QUERY_NAMES [NAME=...] [, NOTFOUND=...] [, MAXROWS=...]
Elément de syntaxe
Description/format
NAME=
Nom d'objet d'un MBean précis ou indication d'un filtre permettant de
rechercher plusieurs MBeans.
Les caractères génériques "*" et "?" sont autorisés. "*" signifie n'importe
quelle chaîne de caractères et "?" exactement un caractère.
Automation Engine
NOTFOUND=
537
Comportement adopté si aucun MBean n'est trouvé.
Valeurs autorisées : "NORMAL" et "ABORT" (valeur par défaut)
"NORMAL" = Le Job UC4 se poursuit.
"ABORT" - Le Job UC4 se termine anormalement.
MAXROWS=
Nombre maximal de lignes devant être répertoriées.
SI vous laissez ces paramètres vides, l'Agent renvoie tous les MBeans
enregistrés.
Remarques
Lors de l'indication du filtre, vous devez surveiller quelques règles propres à JMX. Vous pouvez utiliser les
caractères génériques dans la désignation du domaine. Ils sont également admis pour les propriétés si
vous respectez le point suivant. Le caractère générique "*" doit remplacer une paire Propriété=Valeur
complète (par exemple, description=Printer). Les caractères génériques ne peuvent en revanche pas être
utilisés au sein d'un nom de propriété ou de valeur (par exemple, description=*).
Exemples de filtres valides :
"*:*"
"DefaultDomain:*"
"???Domain:description=Printer,*"
"*:description=Printer,type=laser,*"
Exemple
JMX_QUERY_NAMES NAME=JMImplementation:*, NOTFOUND=ABORT
Rubriques connexes :
JCL de UC4 pour JMX
5.9 JMX_SET_ATTRIBUTE
Définit un attribut d'un MBean.
Syntaxe
JMX_SET_ATTRIBUTE MBEAN=..., ATTRIBUTE=..., VALUE=...
Elément de syntaxe
Description/format
MBEAN=
Nom d'objet du MBean.
ATTRIBUTE=
Nom de l'attribut.
VALUE=
Valeur qui doit être définie pour l'attribut.
Remarques
L'administrateur UC4 définit dans le fichier INI de l'Agent avec le paramètre search_all= si la fonction
recherche le MBean sur tous les serveurs MBean locaux ou seulement sur celui relié à l'Agent concerné.
538
Chapter 5 JCL de UC4 pour JMX
Exemple
JMX_SET_ATTRIBUTE ATTRIBUTE=State, MBEAN=UC4:type=StandardMBean,
VALUE=running
Rubriques connexes :
JCL de UC4 pour JMX
5.10 JMX_UNREGISTER_MBEAN
Supprime un MBean déjà enregistré.
Syntaxe
JMX_UNREGISTER_MBEAN MBEAN=...
Elément de syntaxe
Description/format
MBEAN=
Nom d'objet du MBean.
Exemple
JMX_UNREGISTER_MBEAN MBEAN=UC4:type=StandardMBean
Rubriques connexes :
JCL de UC4 pour JMX
5.11 JMX_WAIT_FOR_NOTIFICATION
Attend une Alerte du MBean.
Syntaxe
JMX_WAIT_FOR_NOTIFICATION MBEAN=... [, ENABLE=...] [, FILTER=...]
Elément de syntaxe
Description/format
MBEAN=
Nom d'objet du MBean.
ENABLE=
Liste des attributs ou des types d'alertes.
Si vous indiquez plusieurs paramètres, vous devez les séparer par des
virgules.
FILTER=
Filtre pour les alertes.
Valeurs autorisées : "NONE" (Valeur par défaut), "ATTRIBUTE" et "TYPE".
"NONE" - Toutes les alertes ont été acceptées.
"ATTRIBUTE" - Un filtrage des modifications des attributs a lieu.
"TYPE" - Un filtrage en fonction du type d'alerte a lieu.
Les attributs ou les types sont définis par le paramètre ENABLE=.
Automation Engine
539
Exemple
JMX_WAIT_FOR_NOTIFICATION MBEAN=JMImplementation:type=MbeanServerDelegate,
ENABLE="JMX.mbean.registered,JMX.mbean.unregistered", FILTER=NONE
Rubriques connexes :
JCL de UC4 pour JMX
540
Chapter 6 JCL de UC4 pour SQL
6 JCL de UC4 pour SQL
6.1 Généralités sur le JCL SQL
Pour les Jobs SQL, UC4 met des scripts spéciaux à votre disposition. Ils écrivent leurs résultats dans
le rapport. Ces derniers peuvent alors être lus à l'aide de PREP_PROCESS_REPORT.
Elément de script
Elément de script
Description
SQL_EXECUTE_JOB
Exécute un Job sur le Serveur MS SQL Server
SQL_GET_COLUMNS
Fournit des informations sur les colonnes d'une table
SQL_GET_JOBS
Fournit la liste de tous les Jobs définis pour un Serveur MS SQL Server
SQL_GET_TABLES
Répertorie toutes les tables de la base de données
SQL_ON_ERROR
Définit la réaction en cas d'erreur SQL
SQL_ON_
ROWCOUNT_ZERO
Définit le code retour à afficher si une instruction SQL ne renvoie aucune
correspondance
SQL_SET_
STATEMENT_
TERMINATOR
Définit le caractère utilisé pour signaler la fin des instructions SQL
Rubriques connexes :
Onglet Forme (SQL)
6.2 SQL_EXECUTE_JOB
Exécute un Job sur le Serveur MS SQL Server.
Syntaxe
SQL_EXECUTE_JOB JOB=...
Elément de syntaxe
Description/format
JOB=
Nom du Job MS SQL
Remarques
Pour démarrer les Jobs MS SQL, l'Agent utilise la procédure sp_start_Job enregistrée dans la base de
données msdb.
Le statut du Job UC4 dépend de l'exécution du Job démarré :
Statut du Job MS SQL
Statut du Job UC4
Le Job MS SQL s'est terminé avec succès
ENDED_OK
Le Job MS SQL s'est interrompu
ENDED_NOT_OK
Automation Engine
Le Job MS SQL a été interrompu par l'Utilisateur
541
ENDED_CANCEL
Le Job UC4 s'interrompt également si l'Utilisateur ne dispose pas des autorisations nécessaires ou qu'une
base de données autre que Microsoft SQL Server a été utilisée.
Si vous interrompez le Job UC4 alors que le Job MS SQL est encore actif, l'Agent appelle la procédure
enregistrée sp_stop_Job. Par conséquent, le Job MS SQL ne s'interrompt pas forcément immédiatement
et est surveillé jusqu'à ce qu'il soit réellement terminé.
Le Script SQL_GET_JOBS répertorie les Jobs MS SQL disponibles.
Exemple
SQL_EXECUTE_JOB JOB="Integrity Checks Job for DB Maintenance Plan";
Rubriques connexes :
JCL de UC4 pour SQL
6.3 SQL_GET_COLUMNS
Fournit des informations sur les colonnes d'une table.
Syntaxe
SQL_GET_COLUMNS TABLE=...
Elément de syntaxe
Description/format
TABLE=
Nom de la table
Remarques
L'Agent écrit le résultat dans le rapport. Les diverses valeurs sont séparées par un point-virgule.
Organisation des informations d'une colonne :
Clé étrangère;Clé primaire;Nom de la colonne;(type de données)
Valeur
Description
Clé étrangère
Indicateurs de la clé
Valeurs autorisées : "0" et "1"
"0" - La colonne ne représente pas de clé étrangère.
"1" - La colonne est une clé étrangère.
Clé primaire
Indicateurs de la clé
Valeurs autorisées : "0" et "1"
"0" - La colonne ne représente pas de clé primaire.
"1" - La colonne est une clé primaire.
Nom de la colonne
Nom de la colonne
Type de données
Se compose du type de données propre à l'éditeur et de l'information
précisant si le champ autorise la valeur NULL. Si le type de données indique
les caractères utilisés, la longueur est mentionnée entre parenthèses derrière.
542
Chapter 6 JCL de UC4 pour SQL
Une validation (COMMIT) automatique a lieu avant l'exécution de la fonction de Script.
Exemple
L'exécution suivante détermine les informations de colonne de la table "Products".
SQL_GET_COLUMS TABLE="Products";
Résultat dans le rapport :
0;1;ProductID;(int identity, not null)
0;0;ProductName;(nvarchar(40), not null)
1;0;SupplierID;(int, null)
1;0;CategoryID;(int, null)
0;0;QuantityPerUnit;(nvarchar(20), null)
0;0;UnitPrice;(money, null)
0;0;UnitsInStock;(smallint, null)
0;0;UnitsOnOrder;(smallint, null)
0;0;ReorderLevel;(smallint, null)
0;0;Discontinued;(bit, not null)
Rubriques connexes :
JCL de UC4 pour SQL
6.4 SQL_GET_JOBS
Fournit la liste de tous les Jobs définis pour un Serveur MS SQL Server.
Syntaxe
SQL_GET_JOBS
Remarques
Pour déterminer les Jobs MS SQL, l'Agent utilise la procédure sp_help_Job enregistrée dans la base de
données msdb. Dans le rapport, chaque Job MS SQL est affiché dans une ligne distincte.
Le Job UC4 s'interrompt si l'Utilisateur ne dispose pas des autorisations nécessaires ou qu'une base de
données autre que Microsoft SQL Server a été utilisée.
Le Script SQL_EXECUTE_JOB permet d'exécuter les Jobs MS SQL.
Exemple
SQL_GET_JOBS;
Rubriques connexes :
JCL de UC4 pour SQL
6.5 SQL_GET_TABLES
Répertorie toutes les tables de la base de données.
Automation Engine
543
Syntaxe
SQL_GET_TABLES
Remarques
L'Agent écrit le résultat dans le rapport. Pour chaque table, une ligne est générée. Si un schéma est
disponible, il est mentionné avant le nom de la table. Les noms du schéma et de la table sont alors séparés
par un point.
Exemple
Ce Script détermine toutes les tables de la base de données "Northwind".
SQL_GET_TABLES;
Résultat dans le rapport :
dbo.Categories
dbo.CustomerCustomerDemo
dbo.CustomerDemographics
dbo.Customers
dbo.Employees
dbo.EmployeeTerritories
dbo.Order Details
dbo.Orders
dbo.Products
dbo.Region
dbo.Suppliers
dbo.Territories
Rubriques connexes :
JCL de UC4 pour SQL
6.6 SQL_ON_ERROR
Définit la réaction en cas d'erreur SQL.
Syntaxe
SQL_ON_ERROR ACTION=...
Elément de syntaxe
Description/format
ACTION=
Réaction en cas d'erreur SQL
Valeurs autorisées : "ABEND" (valeur par défaut) et "RESUME".
"ABEND" - Dès qu'une erreur SQL se produit, le Job s'interrompt avec le
code retour "1". Les instructions SQL suivantes ne sont pas exécutées.
"RESUME" - Le Job se poursuit en dépit des erreurs SQL qui se produisent.
La valeur doit figurer entre guillemets.
Si vous ne saisissez pas de paramètre, "RESUME" est utilisé.
544
Chapter 6 JCL de UC4 pour SQL
Remarques
Par défaut, les Jobs sont interrompus lorsque des erreurs SQL surviennent. Ce Script vous permet de
contrôler ce comportement.
Le paramétrage défini avec SQL_ON_ERROR s'applique à toutes les instructions SQL qui suivent,
jusqu'à la fin du Job ou jusqu'à l'instruction SQL_ON_ERROR suivante.
Attention : en cas d'interruption du Job, toutes les instructions SQL postérieures à la dernière validation
(COMMIT) effectuée sont annulées. Si le Job ne comporte pas d'opération de validation (COMMIT), toutes
les instructions SQL sont annulées.
Exemple
La deuxième instruction INSERT génère une erreur car le nom de la table contient une erreur de saisie.
L'Agent poursuit tout de même le Job et peut écrire l'enregistrement pour Monsieur Huber dans la base de
données.
SQL_ON_ERROR ACTION="RESUME"
insert into person values (1,'Meier');
insert into persson values (2,'Mueller');
insert into person values (3,'Huber');
Dans l'exemple suivant, l'Agent interrompt le Job en raison du nom de table erroné. L'entrée de
l'enregistrement pour Monsieur Meier n'est pas annulée par le biais du Script COMMIT. Dans la mesure où
le Job est interrompu par la deuxième instruction INSERT, l'enregistrement pour Monsieur Huber n'est
plus pris en compte, bien qu'il soit correct du point de vue syntaxique.
SQL_ON_ERROR ACTION="ABEND"
insert into person values (1,'Meier');
COMMIT;
insert into persson values (2,'Mueller');
insert into person values (3,'Huber');
Rubriques connexes :
JCL de UC4 pour SQL
6.7 SQL_ON_ROWCOUNT_ZERO
Définit le code retour à afficher si une instruction SQL ne renvoie aucune correspondance.
Syntaxe
SQL_ON_ROWCOUNT_ZERO RETCODE=...
Elément de syntaxe
Description/format
RETCODE=
Code retour
Valeur par défaut : "1"
Remarques
Ce Script permet d'interrompre le Job avec un code retour défini si une instruction SQL comme SELECT
ou UPDATE ne renvoie aucune correspondance. Le paramétrage défini avec SQL_ON_ROWCOUNT_
Automation Engine
545
ZERO s'applique à toutes les instructions SQL qui suivent, jusqu'à la fin du Job ou jusqu'à l'instruction
SQL_ON_ROWCOUNT_ZERO suivante.
Si vous définissez RETCODE sur "0", le nombre de correspondances des instructions SQL est ignoré et
le Job se poursuit.
L'instruction SQL_ON_ROWCOUNT_ZERO ne peut être utilisée qu'avec SELECT, UPDATE,
INSERT et DELETE. Les autres instructions SQL comme CREATE TABLE ne renvoient pas non plus de
correspondance en temps normal. Par conséquent, si vous utilisez SQL_ON_ROWCOUNT_ZERO dans
le Job, vous devez définir RETCODE sur la valeur "0" devant chaque instruction SQL nommée.
En cas d'interruption du Job, toutes les instructions SQL postérieures à la dernière validation
(COMMIT) effectuée sont annulées.
Exemple
Si l'une des trois instructions SQL ne renvoie aucune correspondance, le Job est interrompu avec le code
retour "1".
SQL_ON_ROWCOUNT_ZERO RETCODE=1;
select * from person;
insert into person values (1,'Meier');
update person set adresse = 'Hauptstraße 8'
where name = 'Huber';
Rubriques connexes :
JCL de UC4 pour SQL
6.8 SQL_SET_STATEMENT_TERMINATOR
Définit le caractère utilisé pour signaler la fin des instructions SQL.
Syntaxe
SQL_SET_STATEMENT_TERMINATOR TERM=...
Elément de syntaxe
Description/format
TERM=
Séparateur
Valeur par défaut : ";"
Remarques
Attention : cette fonction est automatiquement entrée dans le Script si le séparateur apparaît dans
l'instruction SQL. Vous ne devez alors pas impérativement copier la fonction vous-même !
Lors de la sélection d'un séparateur, l'ordre suivant est conservé :
";", "@", "$", "/", "~", "*", "+", "?", "=", ".", "-", "§", "ë"
Le paramétrage défini avec SQL_SET_STATEMENT_TERMINATOR s'applique à toutes les
instructions SQL qui suivent, jusqu'à la fin du Job ou jusqu'à l'instruction SQL_SET_STATEMENT_
TERMINATOR suivante.
546
Chapter 6 JCL de UC4 pour SQL
Exemple
Comme ";" apparaît dans une instruction SQL, SQL_SET_STATEMENT_TERMINATOR est ajouté au
Script.
SQL_SET_STATEMENT_TERMINATOR TERM='@';
DECLARE
v_einheit_kurz varchar2(10);
v_bezeichnung varchar2(40);
BEGIN
v_einheit_kurz := 'kg';
v_bezeichnung := 'Kilogramm';
insert into einheit (einheit_kurz, bezeichnung)
values (v_einheit_kurz, v_bezeichnung);
EXCEPTION when DUP_VAL_ON_INDEX then
/* L'enregistrement est déjà là => Définir une nouvelle désignation */
update einheit set
bezeichnung = v_bezeichnung
where einheit_kurz = v_einheit_kurz;
END;
@
Rubriques connexes :
JCL de UC4 pour SQL
Automation Engine
547
Glossaire
Ce glossaire contient tous les concepts spécifiques à UC4.
ABC D EFGH IJKLMN OPQR STU VW XYZ
A
l
l
l
l
l
l
l
l
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 UC4.
Activation
L'activation entraîne l'attribution d'un RunID à la Tâche, l'affichage de la Tâche dans la Fenêtre
d'Activités et la préparation pour l'exécution. (voir aussi Début)
Protocole d'activation
Rapport contenant les détails d'activation de la Tâche. JCL généré, modifications de Variables,
etc.).
Fenêtre d'activités
Fenêtre de l'Interface Utilisateur dans laquelle s'affichent les objets activés.
Alias
Nom pour les Tâches qui affichent le moniteur et les statistiques au lieu du nom de l'objet réel dans
la Fenêtre d'Activités. Possible pour les Tâches de Workflow et les objets qui sont activés de
manière unique, périodique ou bien via le script.
Processus de travail
Composant de l'UC4 Automation Engine. S'occupe du traitement dans un système UC4. (voir
aussi le Processus de travail primaire).
Tâche
Objet exécutable qui a déjà été exécuté.
Simulation automatique
Indique les Tâches qui seront exécutées dans une période donnée et offre ainsi une prévisualisation
détaillée des activités futures.
B
l
l
l
l
l
C
Mode batch
Traitement séquentiel de processus en arrière-plan.
Calendrier
Partie d'un objet Groupe Calendrier ou Variable (Calendrier ou Clef).
Alerte
Envoi de messages à un Utilisateur ou un Groupe Utilisateur unique du système UC4. Egalement
un type d'objet propre à UC4.
Utilisateur
Personne utilisant le système UC4. Egalement un type d'objet distinct dans UC4.
Groupe Utilisateur
Regroupement d'Utilisateurs auxquels un profil de droits commun doit être attribué. Egalement un
type d'objet distinct dans UC4.
548
Chapter Glossaire
l
l
l
l
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 UC4.
Enfant, enfants
Objets activés par le biais de Tâches supérieures dans l'arborescence (parent).
Cockpit
Visualise les valeurs et statuts dans UC4 ou à partir des systèmes surveillés et contrôlés.
Egalement un type d'objet distinct dans UC4.
Table de Code
Définit un jeu de caractères complet. Egalement un type d'objet distinct dans UC4.
D
l
l
l
l
l
Séquence de données
Liste interne (Exemple : Sorties de console ou lignes d'un objet Variable), dont les lignes peuvent
ê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*.
Processus de dialogue
Partie de l'UC4 Automation Engine et forme particulière de processus de travail. S'occupe des
messages provenant de l'Interface Utilisateur
Utilitaires
Prennent en charge les Tâches d'administration d'un système UC4, telles que la réorganisation et
l'archivage de la base de données UC4.
Documentation
Manuels d'utilisation d'UC4. Egalement un type d'objet distinct d'UC4, dans lequel des
informations peuvent être enregistrées.
Variable dynamique
Objet Variable avec l'attribut "Source" - "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.
E
l
l
l
l
l
Connexion e-mail
Fonctionnalité des Agents Windows et UNIX permettant l'envoi d'e-mails.
Enterprise Control Center (ECC)
Produit UC4. Application Web permettant d'accéder de manière claire et simple aux fonctions des
divers produits/applications UC4.
Disponible dans le centre de téléchargement UC4
.
Evènement
Action exécutée lorsque certaines conditions sont remplies. Egalement un type d'objet distinct
dans UC4.
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 l'UC4 Automation Engine et l'Agent UC4. Afin
que l'affectation à l'Evènement reste possible en cas de changement du fichier log ou de
modification liée du RunID, la communication s'effectue par le biais du premier RunID.
Explorer
Fenêtre de l'Interface Utilisateur dans laquelle les objets sont affichés, traités et gérés.
Automation Engine
l
549
Dépendance externe
Tâche dont le statut de fin est pris en compte dans le déroulement d'un Workflow, bien qu'elle ne
soit pas exécutée dans le cadre du Workflow.
F
l
Transfert de Fichier
Transmission de fichiers entre deux machines. Egalement un type d'objet distinct dans UC4.
G
l
Groupe
Regroupe des Tâches pour les exécuter ensemble. Egalement un type d'objet distinct dans UC4.
H
l
l
l
Hôte
Ordinateur, système cible
Attributs de l'hôte
Attributs de l'objet Job, variant en fonction de la plateforme.
Aide HTML
Format d'aide de Microsoft pour les manuels. L'extension des fichiers d'aide est .CHM (voir aussi
WebHelp)
I
l
Include
Script utilisé souvent et dans de nombreux objets. Egalement un type d'objet distinct dans UC4.
J
l
l
JCL
Acronyme de "Job Control Language". Il s'agit d'instructions qui forment les étapes de traitement et
sont exécutées sur les machines.
Job
Traitement sur un système cible. Egalement un type d'objet distinct dans UC4.
K
l
l
l
Groupe Calendrier
Rassemblement de jours au sein de Calendriers. Egalement un type d'objet distinct dans UC4.
Condition de calendrier
Critère d'exécution pour les Tâches basées sur les Calendriers.
Calendrier
Partie d'un objet Groupe Calendrier dans lequel les jours sont définis.
550
Chapter Glossaire
l
l
l
Clef
Colonne pour les objets Variable statique par laquelle il est possible d'accéder aux Valeurs d'une
ligne spécifique.
Processus de communication
Composant de l'UC4 Automation Engine. Assure la connexion aux composants UC4.
Menu contextuel
Menu qui s'affiche parfois en appuyant sur le bouton droit de la souris.
L
l
l
l
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).
Login
Données de connexion pour les systèmes cible. Egalement un type d'objet distinct dans UC4.
Date logique
La date logique est utilisée comme date de comparaison lors de la vérification des conditions de
calendrier.
M
l
l
l
Client
Environnement indépendant pour l'exécution de Tâches dans un système UC4. Egalement un type
d'objet distinct dans UC4.
Fenêtre de message
Fenêtre dans l'Interface Utilisateur qui affiche avertissements, messages d'information et d'erreur.
Moniteur
Affichage graphique de l'exécution d'une Tâche.
N
l
Processus non-stop
Composant de l'UC4 Automation Engine. Ils reprennent le traitement lorsque la machine avec les
processus serveur actifs tombe en panne.
O
l
l
l
Objet
Les activités et déroulements que contrôle UC4 sont représentés à l'aide d'objets (voir aussi
Tâche).
Classe d'objet
Tous les objets sont répartis en 4 classes : objets activables, objets actifs, objets passifs et objets
système.
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,
Automation Engine
l
551
Workflow, Groupe Calendrier, Login, Client, RemoteTaskManager, Schedule, script, Serveur,
Sync, Variable et Fuseau horaire.
Variables d'objet
Caractères de remplacement des valeurs définies dans l'onglet "Variables & Prompts" d'un objet.
P
l
l
l
l
l
l
l
l
l
l
l
l
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)
Conteneur de périodes
Contrôle l'exécution des Tâches périodiques.
Tâches périodiques
Sont planifiées sans objet Schedule et couvrent la plupart du temps une période inférieure à un jour.
Perspective
Domaine de fonction propre de l'Enterprise Control Center (ECC) - interface Web. Les perspectives
"Service Catalog", "Process Monitoring" und "Process Assembly" mettent à disposition des
fonctionnalités de l'UC4 Automation Platform.
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.)
Process Assembly
Perspective de l'Enterprise Control Center. Permet la création, la définition et la modification de
Workflows.
Process Automation
Ancien nom de la perspective Service Catalog.
Process Monitoring
Perspective de l'Enterprise Control Center. Enumère les activités de tous les utilisateurs et permet
de les influencer (interrompre, désactiver, ...).
Simulation
Estimation de la durée d'une Tâche sur la base des exécutions précédentes.
PromptSet
Masque de saisie défini par l'Utilisateur pour les objets activables. Egalement un type d'objet
distinct dans UC4.
Elément PromptSet
Champs/ éléments de contrôle permettant de demander des valeurs de l'Utilisateur. Forment le
contenu d'un masque de saisie d'un PromptSet.
Variable PromptSet
Enregistre la valeur d'un élément PromptSet. Ainsi, il peut s'agir selon la situation de celle indiquée
par l'Utilisateur ou d'une valeur par défaut. Elles se comportent comme des Variables d'objet.
Q
l
R
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 UC4.
552
Chapter Glossaire
l
l
l
l
l
l
l
l
l
Rapid Automation (RA)
Technologie générique capable de prendre en charge des solutions différentes. Composé d'un
Agent RA et d'une Solution RA.
Agent RA
Agent UC4 Agent pouvant être associé à une Solution RA définie et mettre ainsi ses fonctionnalités
à disposition d'un système UC4. Il représente ainsi l'interface entre un système / une application /
une plateforme externes et un système UC4.
Solution RA
Solution basée sur la technologie Rapid Automation Technologie permettant à UC4 d'accéder à un
système / une application / une plateforme externes. Il s'agit ici d'un fichier JAR à charger dans la
base de données UC4 et à associer à un Agent RA. Après le chargement de la solution, les objets
RA spécifiques (Jobs, Connexions, Agent) sont disponibles dans le système UC4.
Date réelle
Date utilisée pour la vérification de la surveillance de la durée d'exécution ou des conditions
temporelles dans les propriétés des Tâches de Workflow. La date réelle correspond au moment de
l'activation du Workflow supérieur et est transmise à toutes les tâches subordonnées.
RemoteTaskManager
Surveille et contrôle les Jobs externes qui n'ont pas été démarrés par UC4. Egalement un type
d'objet distinct dans UC4.
Rapport
Rapport contenant les détails d'activation d'une Tâche ou d'un composant UC4.
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.
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 l'UC4 Automation Engine.
Code retour
Valeur représentant le résultat des Tâches et des fonctions de script.
S
l
l
l
l
l
l
l
Schedule
Démarre des objets activables à intervalles périodiques. Egalement un type d'objet distinct dans
UC4.
Script
Instructions de traitement dans le langage de script d'UC4. Egalement un type d'objet distinct dans
UC4.
Variable de script
Caractères de remplacement d'une valeur dans un script.
Processus serveur
Base de l'UC4 Automation Engine. Il existe plusieurs types de processus serveur : processus de
communication, processus de travail, processus de dialogue et processus non-stop.
ServiceManager
Programme permettant de démarrer et d'arrêter des composants UC4.
Service Catalog
Perspective de l'Enterprise Control Center. Permet à l'utilisateur de démarrer les objets de son
dossier Favoris et de surveiller de manière générale leur exécution.
Début
Début de l'exécution d'une Tâche. (voir aussi Activation)
Automation Engine
l
l
l
l
l
l
553
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.
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.).
Sous-Workflow
Workflow faisant partie d'un autre Workflow.
Sync
Synchronise les objets activables en fonction de statuts et d'actions définis. Egalement un type
d'objet distinct dans UC4.
Supervision système
Fenêtre de l'Interface Utilisateur contenant des informations sur le système UC4.
T
l
l
Les 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.
Temps dépassé
Intervient après écoulement d'une durée définie.
U
l
l
l
l
l
l
l
Tâche de niveau supérieur
Un objet peut être activé de différentes façons. L'initiateur de l'activation s'appelle Tâche de niveau
supérieur (parent).
L'UC4 Automation Engine
commande un système UC4. Il repose sur plusieurs processus serveur.
Plateforme UC4 Automation
Produit UC4. Contient les composants nécessaires à l'exploitation d'un système UC4 (Automation
Engine, interface utilisateur, Agents, interface Web, etc.).
Disponible dans le centre de téléchargement UC4.
UC4 ClearView
Produit UC4. Outil d'analyse graphique : Regroupe, pour chaque client d'un système UC4, 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 UC4.
Base de données UC4
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.
UC4 Insight
Produit UC4. Outil d'analyse graphique complexe dédié aux données des systèmes de l'UC4
Automation Platform, comme par exemple les Tâches.
Disponible dans le centre de téléchargement UC4.
Composants UC4
Regroupe tous les programmes UC4, notamment l'Interface Utilisateur, Automation Engine, les
Agents, les ServiceManager, les utilitaires, etc.
554
Chapter Glossaire
l
l
l
l
l
l
l
l
l
l
UC4 Policy Orchestrator (PCO)
Produit UC4. Définition et gestion des règles Business et déclenchement d'évènements.
Disponible dans le centre de téléchargement UC4.
Priorité UC4
La priorité UC4 est influencée par le traitement des Tâches au sein du système UC4.
UC4 Application Release Automation
Produit UC4. Permet de définit, gérer et activer des processus d'installation/intégration et de gérer
les versions/dépendances des diverses applications. Les processus de déploiement sont exécutés
via l'UC4 Automation Platform.
Disponible dans le centre de téléchargement UC4.
Script UC4
Langage de script utilisé par UC4.
Serveur UC4
Ancien terme pour le composant UC4 Automation Engine (v8 et inférieures).
UC4 Service Orchestrator (SVO)
Produit UC4. Service Orchestrator est une perspective de l'UC4 Enterprise Control Centers (ECC)
qui permet de gérer, de surveiller et d'analyser la performance des SLA (Service Level
Agreements).
Système UC4
Environnement contrôlé par les composants UC4.
Variables UC4
Variables comportant les paramètres de configuration du système UC4.
Interface Utilisateur
Interface utilisateur graphique d'UC4.
UTC
UC4 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.
V
l
l
l
l
l
Variable
Enregistre ou fournit les valeurs dynamiques de l'exécution. Egalement un type d'objet distinct
dans UC4.
Gestion des Versions
Version protégée d'un objet qui peut être créée lors des modifications et restaurée ultérieurement.
Les 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é.
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.
Enregistré en attente
Statut d'une Tâche qui est exécutée dans un Groupe et attend son démarrage.
W
l
l
WebHelp
Format d'aide pour les manuels qui peut être ouvert via un navigateur web. (voir aussi l'aide HTML)
Interface Web
Interface utilisateur d'UC4 que l'on peut ouvrir via un navigateur web.
Automation Engine
l
l
l
Reprise
Répétition d'une exécution d'objet déjà créée pour laquelle plusieurs particularités s'appliquent au
redémarrage.
Caractères génériques
Caractères de remplacement des données de filtre (? = un caractère exactement, * = chaîne de
caractères).
Workflow
Déroulement de Traitements. Egalement un type d'objet propre à UC4.
X
l
Fichier XML
Format d'importation et d'exportation. Contient la structure des objets.
Z
l
555
Fuseau Horaire
Définit l'heure locale. Egalement un type d'objet distinct dans UC4.