UC4-JCL pour SAP

Transcription

UC4-JCL pour SAP
Automation Engine
Base de connaissances
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 Terminologie - Machines, programmes et fichiers
1
2 Heure
6
3 Informateur de Job de l'Agent
8
4 UC4 et NAT
10
5 Codes d'erreur externes
11
5.1 COBOL - Codes d'erreur des fichiers
11
5.2 COBOL - Codes d'erreur d'exécution
14
5.3 Messages d'erreur de la pile TCP/IP
32
5.4 Codes d'erreur UNIX
34
5.4.1 Codes d'erreur dans les messages du log de l'Agent
34
5.4.2 DEC OSF
35
Codes d'erreur Alpha - DEC-OSF/1 - Digital UNIX 4.0
5.4.3 HP-UX
35
38
Codes d'erreur HP-Workstation (9000), HP-UX 9
38
Codes d'erreur HP-Workstation (9000), HP-UX 10
40
5.4.4 IBM AIX
Codes d'erreur Power-PC - AIX 4.1
5.4.5 SCO
Codes d'erreur Intel, SCO-UNIX ODT 5.*
5.4.6 Sun OS (Solaris)
43
43
46
46
50
Codes d'erreur Sparc, Solaris 1 version 4,1 et supérieure
50
Codes d'erreur Sparc, Solaris 2 version 5,5 et supérieure
52
Codes d'erreur Intel, Solaris version 2.4 et supérieure
55
5.5 Codes d'erreur Windows
58
5.5.1 Win32 - Codes d'erreur (0-999)
58
5.5.2 Win32 - Codes d'erreur (1 000-1 999)
69
5.5.3 Win32 - Codes d'erreur (2 000-5 999)
97
5.5.4 Win32 - Codes d'erreur (6 000-11 999)
114
6 Prise en charge SNMP
137
6.1 Généralités sur SNMP
137
6.2 UC4 et SNMP
137
6.3 Mode Agent sous UNIX
139
vi
Contents
6.4 FAQ et glossaire du sous-agent SNMP UC4
141
6.5 Installation
144
6.5.1 Installation du sous-Agent SNMP UC4 (UNIX)
144
6.5.2 Sous-Agent SNMP UC4 pour UNIX
146
6.5.3 Installation du sous-Agent SNMP UC4 (Windows)
148
6.5.4 Sous-Agent SNMP UC4 pour Windows
150
6.5.5 Configuration du service SNMP de Windows
152
6.6 MIB
153
6.6.1 Structure de la MIB
153
6.6.2 Agent Data Group
154
6.6.3 Agent Control Group
155
6.6.4 Agent Work Group
155
6.6.5 System Group
157
6.6.6 Client Group
159
6.6.7 Server Group
161
6.6.8 Executor Group
164
6.6.9 Blocking Point Group
167
6.6.10 CallOperator Group
169
6.6.11 Interruptions SNMP générées
171
6.7 Licence Net-SNMP
7 UC4 et les systèmes cible
7.1 UC4 et BS2000
176
181
181
7.1.1 archive de texte BS2000
181
7.1.2 Moteur/Agent d'automatisation UC4 - BCIN pour établissement de la connexion
182
7.1.3 Agent BS2000 - Prise en charge du Transfert de Fichier
183
7.1.4 Utilitaire pour la Tâche RFC
185
7.1.5 Agent - Numéros de port définis librement
185
7.1.6 Commande de console BS2000
185
7.1.7 Commande de système d'exploitation BS2000
189
7.2 UC4 et les bases de données
193
7.2.1 Agent de base de données
193
7.2.2 Connexion aux bases de données Oracle
194
7.2.3 Sybase - Procédures enregistrées
194
7.2.4 Procédures enregistrées par MS SQL Server
195
Automation Engine
7.3 UC4 et GCOS 8
vii
195
7.3.1 Agent GCOS8 - Prise en charge du Transfert de Fichier
195
7.3.2 Surveillance d'une fin anormale de l'Agent Job
199
7.4 UC4 et Java EE/JMX
201
7.4.1 Agent JMX/Java EE
201
7.4.2 Création de MBeans à partir des services web
203
7.4.3 Agent Java EE/JMX et IBM WebSphere
208
7.4.4 Envoi de messages SOAP à l'aide de MBeans
208
7.5 UC4 et Micro Focus JES
7.5.1 Jobs dans Micro Focus JES
7.6 UC4 et MPE
7.6.1 Agent – Interaction entre UC4 et MPE
7.7 UC4 et NSK
210
210
215
215
216
7.7.1 Agent - Interaction entre UC4 et NSK
216
7.7.2 Exécutions de Jobs sur NSK
219
7.7.3 Traitement automatisé des lignes de commande
219
7.7.4 Agent UC4 pour HP NonStop Server - Architecture
221
1. Démarrage du Job
222
2. Déroulement du Job
223
3. Fin du Job
223
7.7.5 Fichier modèle EMS
224
7.7.6 Configuration des paramètres spécifiques à NSK
224
7.8 UC4 et Oracle Applications
225
7.8.1 UC4 et Oracle Applications
225
7.8.2 Codes retour des Jobs OA
227
7.9 UC4 et OS/400
227
7.9.1 Agent - Interaction entre UC4 et OS/400
227
7.9.2 Agent OS/400 - Prise en charge du Transfert de Fichier
229
Système de fichiers QSYS
7.10 UC4 et PeopleSoft
230
232
7.10.1 Test de la connexion PeopleSoft
232
7.10.2 Utilisation de Variables de liaison
235
7.10.3 Modifications apportées aux contrôles d'exécution
235
7.11 UC4 et SAP
237
viii
Contents
7.11.1 Solutions SAP et Job Scheduling avec UC4
237
7.11.2 SAP NetWeaver
238
UC4 Automation Platform et SAP NetWeaver
238
Intégration à People
240
Intégration dans SAP Enterprise Portal (iViews)
240
Introduction
240
Démarrage de Tâches
241
Surveillance des activités
242
Intégration d'informations
243
Planification des processus de chargement des données
243
Planification des chaînes de processus
244
Planification de requêtes dans le batch
245
Intégration des processus
Surveillance des canaux de communication SAP XI
Plateforme d'application
ABAP
Gestion des Jobs
246
246
247
247
247
7 Exécution de Jobs dans la pile ABAP (CCMS)
248
7 Processus enfants
250
7 Jobs interceptés
252
7 Analyse du code retour d'application des steps SAP
253
Gestion des variantes
254
Gestion de BDC
255
Gestion de Spool
255
Gestion d'Evènements
256
Gestionnaire de critères
258
Reprise de Jobs SAP
259
Reprise des définitions de calendrier SAP
261
JAVA
263
Agent Java EE/JMX pour SAP NetWeaver
263
JMX dans SAP NetWeaver
263
Exécution de Jobs dans la pile Java (JXBP)
267
Gestion du cycle de vie
Surveillance de SAP NetWeaver
268
268
Automation Engine
ix
Surveillance des moniteurs
268
Surveillance des Evènements SAP
269
SAP Adaptive Computing Controller
271
Prise en charge de SAP ACC
271
Utilisation du MBean ACC
272
Intégration de UC4 à SAP Solution Manager
275
Inscription dans le système Landscape Directory
277
Analyse du log système et du log application
278
Commutation des modes de fonctionnement
278
7.11.1 SAP Banking
Gestion de processus UC4 pour SAP for Banking
279
279
Déroulements dans SAP Banking
279
Les processus ont un code de retour d'application
280
Démarrage de réseaux de processus et de processus
280
Exigences sur UC4
280
Description de fonction UC4
281
UC4-JCL pour SAP
281
7.11.2 SAP Financial Closing Cockpit
Intégration d'UC4 dans SAP Closing Cockpit
282
282
Conditions
282
Fichiers fournis
282
Installation
282
Activation d'objets UC4 avec SAP Closing Cockpit
286
Configuration
286
Exécution
289
7.11.3 Solutions personnalisées
Archivage des données dans SAP
289
289
Contrôle avec UC4
290
Prérequis dans SAP
290
Objets UC4
291
Déroulement
291
Récapitulatif
292
Traitements en masse
292
Définition
293
x
Contents
Technique
Copie de Client dans SAP R/3
293
293
Copie de Client dans SAP R/3
294
Exposé du problème
294
Copie de Client dans R/3 avec UC4
294
Dialogue SAP pour UC4
295
Automated SystemCopy for SAP
296
7.11.4 Liaison technique
296
UC4 et SAP
296
Plusieurs systèmes SAP
296
Agents SAP supplémentaires
296
Objets SAP Security
297
Prise en compte d'attributs de Job
301
Interfaces
302
Interfaces
302
Différences au niveau des fonctions
303
Transport de l'interface UC4
305
Test de l'interface UC4 avec ABAP Workbench
308
Agent pour SAP BW
312
Généralités
312
Vérification du statut
313
Paramètres d'archivage avec R3_ACTIVATE_REPORT
314
ERROR/ERRORLEVEL dans R3_ACTIVATE_SESSIONS
314
ERROR
314
ERROR=IGNORE
315
ERROR=ABEND
315
ERRORLEVEL
315
Résolution de problèmes
316
Conseils sur la recherche d'erreurs
316
Rapport de Job
316
Attributs de l'objet activé
316
Utilisateur CPIC
316
Transactions utiles
316
Fichiers log
316
Automation Engine
xi
Le log système SAP
316
Traces
317
317
Problèmes lors de l'importation des modules fonctionnels
Le programme tp ne se termine pas
317
317
Jobs SAP se terminant par ARCHIVE_INFO_NOT_FOUND
318
Problème de stabilité avec des instances SAP chez de nombreux Agents SAP
(connexion RFC) sur un serveur :
319
Problème de transmission de mot de passe à SAP
319
Après la mise à jour vers les versions 2004s et ultérieures de SAP Netweaver, la
connexion de l'Utilisateur CPIC ne fonctionne plus
7.11.5 Certification
320
321
Résumé
321
7.12 UC4 et Siebel
322
7.12.1 Démarrage et surveillance de Tâches
7.13 UC4 et UNIX
322
323
7.13.1 Authentification des données d'identification
323
7.13.2 Shell et options de shell
324
7.13.3 ID utilisateur pour l'Agent UNIX
325
7.13.4 Agent UNIX - Prise en charge du Transfert de Fichier
325
7.13.5 Droits pour la suppression de fichiers source dans les Transferts de Fichiers
326
7.13.6 Interrogation du système de fichiers UNIX
327
7.13.7 PREP_PROCESS - Interrogation du système de fichiers UNIX
330
7.13.8 Interruption de processus AIX en cas de mémoire insuffisante
332
7.13.9 Agrandissement des fichiers centraux
332
7.13.10 Codes retour des Jobs UNIX
333
7.13.11 Activation de la trace de l'informateur de Job
334
7.14 UC4 et VMS
336
7.14.1 Agent VMS - Prise en charge du Transfert de Fichier
336
7.14.2 Codes retour des Jobs VMS
339
7.15 UC4 et WebSphere MQ
7.15.1 UC4.Connect pour WebSphere MQ Queue Manager
7.16 UC4 et Windows
7.16.1 Démarrage de programmes sous Windows
Domaine
339
339
343
343
343
xii
Contents
Nom d'utilisateur
343
Mot de passe
344
BATCH (type d'identification)
344
DESKTOP
344
Attention !
344
7.16.2 Programmes de test pour l'Agent Windows
345
7.16.3 Objet Job Windows
346
7.16.4 Rapport des Jobs Windows
347
7.16.5 User Account Control dans Windows 2008 et Vista
349
7.16.6 Calcul du nombre CPU
349
7.16.7 Bibliothèques dans Windows 7
349
7.16.8 Agent Windows - Prise en charge du Transfert de Fichier
350
7.17 UC4 et z/OS
351
7.17.1 Agent - Interaction entre UC4 et z/OS
351
7.17.2 Agent z/OS - Prise en charge du Transfert de Fichier
352
7.17.3 Classes de messages
353
7.17.4 Moniteur d'Evènements
355
7.17.5 Moniteur de Job externe
357
7.17.6 Exit SMF
361
7.17.7 Evènement de système de fichiers automatique
365
7.17.8 Prise en charge de GDG
369
7.17.9 Reconnaissance et analyse de la fin du Job
369
7.17.10 Codes retour des Jobs z/OS
370
7.17.11 Exit JCL
371
7.17.12 Include MVS.JOBMD_DEFINITIONS
371
Glossaire
373
Automation Engine
1 Terminologie - Machines,
programmes et fichiers
Conventions de nom
[Conventions de nom] [Résumé des programmes et fichiers]
Généralités
Des conventions typographiques s'appliquent dans la Documentation pour tous les noms de fichier et
de dossier.
Etant donné que Windows ne fait pas la différence entre les minuscules et les majuscules, vous pouvez
saisir les noms de fichier en minuscules.
Généralités sur la syntaxe
Pour éviter tout problème, seuls des noms de fichier courts (8.3) sont utilisés sur le CD fourni.
Ils possèdent la structure de base suivante :
UCZKxxxx
Z = objectif
K = composants d'UC4
xxxx = attribution individuelle
Objectif
Explication
D
Interface Utilisateur
S
Routine serveur (DLL)
X
Agent
Y
Utilitaire
Syntaxe d'UC4 Automation Engine
UCSRVTP
UCSRV signifie UC4-Server (= UC4 Automation Engine)
T = type - "c" pour le processus de communication, "w" pour le processus de travail
P = processus
Syntaxe pour l'Agent
Pour les Agents, l'extension suivante de la syntaxe s'applique :
UCXJSSVT
1
2
Chapter 1 Terminologie - Machines, programmes et fichiers
SSV = ID et version du système
A = Tâche (uniquement pour programme de connexion et CallAPI)
ID et version du système
Matériel, système d'exploitation, version
B2.
BS2000
B24
SNI, BS2000 Sockets version 1.3
B25
SNI, BS2000 Sockets version 2,1 *
B26
SNI, BS2000 Sockets version 2,3 *
*) Il faut faire intervenir l'Agent dont la version Sockets est la plus élevée
MP.
MPE
MP6
HP 3000, MPE version 6.5 et supérieure
N..
NSK
NS1
Tandem NSK
NI6
Machine avec processeurs Itanium
OAX
Oracle Applications
M..
z/OS
M25
IBM, z/OS version V2R5 et supérieure
O..
OS/400
O41
IBM, OS/400 version V4R1M0 et supérieure
PSX
PeopleSoft
R3X
SAP
SLX
Siebel
D..
UNIX - DEC OSF
DA4
Alpha - DEC-OSF/1 - Digital UNIX - Tru64 UNIX
H..
UNIX - HP-UX
HP1
HP-Workstation (9000), HP-UX
HI6
Machine rx2600 avec Itanium, HP-UX
A..
UNIX - IBM AIX
A64
Power PC64, AIX
AP6
Power PC, AIX
L..
UNIX - Linux
LI3
Intel, Linux
LI6
Itanium, Linux
LX6
Linux (x64)
LZ3
zSeries, zLinux
LZ6
zSeries, zLinux 64 octets
C..
UNIX - SCO
CI5
Intel, SCO-UNIX ODT
CI7
Intel, SCO Unixware
U..
UNIX - Sun OS (Solaris)
Automation Engine
U64
Sparc64, Solaris
US8
Sparc, Solaris
UI8
Intel, Solaris
SI6
Intel 64 octets (x64), Solaris
V..
VMS
VA7
Alpha, OpenVMS-Alpha
VI8
OpenVMS (IA64)
VV7
VAX, VAX/VMS
W..
Windows
WI3
Plates-formes à 32 bits (x86)
WI6
Plates-formes à 64 octets (IA64)
WX6,
Plates-formes à 64 octets (x64)
Tâche
Objectif
M
Programme de connexion
C
CallAPI
Résumé des programmes et fichiers
[Conventions de nom] [Résumé des programmes et fichiers]
Programmes
Programme
Objectif
ucsrvcp
Installation d'UC4 Automation Engine pour UNIX, processus de
communication
ucsrvwp
Installation d'UC4 Automation Engine pour UNIX, Processus de travail
ucsrvcp.exe
Installation d'UC4 Automation Engine pour Windows, processus de
communication
ucsrvwp.exe
Installation d'UC4 Automation Engine pour Windows, Processus de travail
UCDJ.EXE
Programme de démarrage pour l'Interface Utilisateur
UCDJ.JAR
Interface Utilisateur
UCX...
Programmes de l'Agent
UCYBARBR.EXE
Utilitaire pour la recherche dans les fichiers d'archives
UCYBCHNG.EXE
Utilitaire pour la modification des données exportées
UCYBDBCC.JAR
Utilitaire pour copier et supprimer des Clients
UCYBDBAR.JAR
Utilitaire pour l'archivage de la base de données
3
4
Chapter 1 Terminologie - Machines, programmes et fichiers
UCYBDBLD.JAR
Utilitaire pour le chargement de la base de données
UCYBDBRE.JAR
Utilitaire pour la réorganisation de la base de données
UCYBDBUN.JAR
Utilitaire pour le déchargement de la base de données
UCYBDBRR.EXE
Utilitaire pour la création d'objets audit
UCYBCRYP.EXE
Programme pour l'encryptage des mots de passe
UCYBSMGR.EXE
Service-Manager - Service
UCYBSMDI.EXE
Service-Manager - Programme de dialogue
UCYBSMCL.EXE
Service-Manager - Interface de ligne de commande
UCS...DLL
Routines serveur
Fichiers
Fichier
Objectif
UC.MSL
Bibliothèque de messages
UCX.MSL
Bibliothèque de messages pour les Agents hors Windows
UC_INI.TXT
Contenu de base de données initial pour UC4 DB.Load
UC_DEF.TXT
Contenu de base de données par défaut pour une nouvelle installation
UC_DDL.SQL
DDL pour la création de DB (MS SQL Server)
CBLRTSS.DLL
Système d'exécution Micro Focus Cobol (version 4.0)
ZU*.DLL, UC*.DLL
Bibliothèques de fonction UC4
*.OCX
Système d'exécution Microsoft Visual Basic (version 6.0)
TRANSPRT.TXT,
K*.*, R*.*, E*.TXT
Modules fonctionnels pour les systèmes SAP :
Résumé des ordres de transport, des modules fonctionnels et du protocole
d'exportation valides
UCYBABR.VBP,
BROWSE*.*,
TOOBIG.*
Microsoft Visual Basic - Code source d'Archive Browser
*.JAR
Bibliothèques de fonction Java
Objets de développement SAP de l'interface UC4
L'interface UC4 pour SAP Basis Job Scheduling est développée dans ABAP. Elle se compose des objets
de développement SAP énumérés dans le tableau.
R3X sur SAP Basis
version 3.x
R3X sur SAP Basis versions 4.0x, 4.5x, 4.6x
et 6.10
Classe de
développement
J2U0
/SBB/UC4
Structures DDIC
J_2U*
/SBB/UC4*
Groupe de fonction
J2U3
/SBB/UC4*
Modules fonctionnels
J_2U_30_*
/SBB/UC4*
Automation Engine
Code retour des Agents sur Windows
Les Agents s'exécutant sur la plate-forme Windows fournissent les codes retour suivants :
l
l
l
l
l
62 (FATAL_ERROR_SOCKETS) - erreur de socket
63 (FATAL_ERROR_NOINIFILE) - fichier INI non disponible
64 (FATAL_ERROR_NOMEMORY) - la demande de mémoire a échoué
65 (FATAL_ERROR_CONFIG) - nom d'Agent ou numéro de port TCP/IP non défini
66 - impossible d'ouvrir le fichier log
5
6
Chapter 2 Heure
2 Heure
Dans le présent document sont décrites les notions de base qui jouent un rôle important pour l'heure en
général.
Notions de temps de base
L'heure se compose toujours d'une date et d'une heure. L'heure indiquée se rapporte à l'heure locale. Elle
est donc dépendante du Fuseau horaire de référence et de la prise en compte éventuelle du passage à
l'heure d'été.
Los Angeles (PST)
New York (EST)
vendredi 3 Mai 2002 vendredi 3 Mai 2002
04:13:02
07:13:02
UTC
Francfort (CEST)
Tokyo (TYST)
vendredi 3 Mai
2002
12:13:02
vendredi 3 Mai
2002
13:13:02
vendredi 3 Mai 2002
21:13:02
Date
La date désigne la date locale. Elle est donc dépendante du Fuseau horaire de référence et de la prise en
compte éventuelle du passage à l'heure d'été.
Heure
L'heure est l'heure locale. Elle est donc dépendante du Fuseau horaire de référence et de la prise en
compte éventuelle du passage à l'heure d'été.
UTC - Coordinated Universal Time
UTC est la norme horaire internationale et la base de tous les calculs horaires dans UC4. UTC se base sur
une division de la journée en 24 heures. C'est pourquoi les heures de l'après-midi sont, par exemple,
indiquées 16:00 UTC (seize heures, zéro minute). En UTC, il n'y a pas d'heure d'été. C'est pourquoi les
indications horaires en UTC sont toujours uniques.
GMT - Greenwich Mean Time
L'heure du méridien de Greenwich, placé sur la longitude 0, est la base des Fuseaux horaires. Il sert de
référence lors de la détermination des décalages par rapport aux autres Fuseaux horaires.
TZ - Time Zone/Fuseau horaire
Les domaines présentant un décalage horaire par rapport à GMT sont les Fuseaux horaires. La différence
ne doit pas forcément être d'une heure entière (60 minutes). En principe, les limites des Fuseaux horaires
suivent la longitude. Les Fuseaux horaires peuvent cependant s'écarter de la détermination générale à
l'aide de la longitude au sein des frontières politiques de certains pays.
Automation Engine
7
Ligne de changement de date/Date Line
La ligne de changement de date s'établit sur la 180e méridien de longitude.
Heure normale (heure d'hiver)
L'heure normale est l'heure locale attribuée au Fuseau horaire. L'heure normale est parfois appelée "heure
d'hiver".
DST - Daylight Saving Time/Heure d'été
Pour l'heure d'été, l'heure normale est avancée d'un certain nombre d'heures. L'utilisation de l'heure d'été,
la date du changement horaire et la différence par rapport à l'heure normale dépendent de chaque pays. De
même, l'année est éventuellement décisive quant à l'existence d'un changement à l'heure d'été et la date à
laquelle il a lieu. Certains pays sont encore en cours de décision pour prendre en compte ou changer la
règle de l'heure d'été.
Le passage à l'heure normale ou à l'heure d'été en décalant d'une heure (60 minutes) est le plus répandu.
Toutefois, il existe également des pays au sein desquels la différence par rapport à l'heure normale est
supérieure ou inférieure à une heure. Le changement à l'heure normale ou à l'heure d'été est inversé entre
l'hémisphère nord et l'hémisphère sud. Durant la période où l'heure normale passe à l'heure d'été dans
l'hémisphère nord, l'heure d'été passe à l'heure normale dans l'hémisphère sud. Dans l'hémisphère nord,
on passe à l'heure d'été au printemps, dans l'hémisphère sud à l'automne.
Rubriques connexes :
Utilisation des Fuseaux horaires dans UC4
8
Chapter 3 Informateur de Job de l'Agent
3 Informateur de Job de l'Agent
Tous les Agents de système d'exploitation possèdent un Agent Job grâce auquel vous pouvez exécuter
et surveiller les Jobs. Il est notamment exécuté dans les objets Include HEADER et TRAILER. Ces
Includes de Job spéciaux se trouvent dans le Client système 0000.
Extrait de l'objet Include HEADER.MVS :
//JMLDS EXEC PGM=&UC_JOBMD,
// PARM='JNR=&UC_REALNR MNR=&UC_CLIENT PNR=&UC_IP_PORT IPA=&UC_IP_ADR
//
TYP=S TXT="
Job started" 2>&1'
Extrait de l'objet Include TRAILER.MVS :
//JMLDE EXEC PGM=&UC_JOBMD,COND=EVEN,
// PARM='JNR=&UC_REALNR MNR=&UC_CLIENT PNR=&UC_IP_PORT IPA=&UC_IP_ADR
//
TYP=E STP=&UC_REPORT_STEPS RET=&RETCODE 2>&1'
Attention : pour l'Agent Job z/OS, l'instruction PARM ne doit pas contenir plus de 100 caractères !
Paramètres de démarrage généraux
L'Agent Job possède une série de paramètres de démarrage pouvant lui être transmis. Le tableau suivant
contient ceux qui s'appliquent à tous les informateurs de Job.
Paramètres Description
IPA
Adresse IP
JNR
RunID du Job
MNR
Client
PNR
Numéro de port
RET
Code retour
TYP
Type ("S" pour Agent Job de début, "E" pour Agent Job de fin)
Pour l'Agent Job GCOS8, les types suivants s'appliquent également "R" : redémarrage,
"A" : fin anormale, "X" : arrêt de l'Agent Job et "J" : rapport de Job du système RSM.
TXT
Texte affiché au début du rapport de Job et dans la fenêtre de détails à côté du texte de
statut.
Attention : le paramètre TXT= ne doit pas dépasser 32 caractères. En outre, l'UC4
Automation Engine a besoin des 8 premiers caractères. C'est pourquoi vous devez
toujours entrer des espaces pour les 8 premiers caractères. Les autres caractères sont à
votre disposition pour votre texte.
De plus, plusieurs informateurs de Job possèdent des paramètres de démarrage spéciaux :
Système
Paramètres Description
d'exploitation
GCOS8
RFN
Nom de fichier du rapport de Job
SNM
Numéro de séquence du Job
Automation Engine
z/OS
SW
Statut de l'Agent Job
TIMEOUT
Intervalle en secondes après lequel un dépassement de délai se produit
pour la connexion entre l'Agent et l'Agent Job (valeur par défaut : 60).
STP
Journalisation des codes retour des steps
"0" - Pas de journalisation (valeur par défaut)
"1" - L'Agent Job enregistre les codes retour.
OS/400
RETRY
Nombre de tentatives de connexion (valeur par défaut : 4)
WAIT
Durée entre les tentatives de connexion (valeur par défaut : 30
secondes)
OUT
Journalisation des messages de l'Agent Job
"0" - Pas de journalisation (valeur par défaut)
"1" - Le rapport de Job contient également les messages de l'Agent Job.
UNIX et VMS
RETRY
Nombre de tentatives de connexion
Valeur par défaut : Pour UNIX et VMS 3
TIMEOUT
Intervalle en secondes après lequel un dépassement de délai se produit
pour la connexion entre l'Agent et l'Agent Job (valeur par défaut : 60).
WAIT
Durée entre les tentatives de connexion
Valeur par défaut : Pour UNIX et VMS 120 secondes
UNIX et
Windows
CMD
Commande devant être exécutée sur l'ordinateur de l'Agent.
La commande peut également contenir des mots de passe ayant été
cryptés via un objet PromptSet. En outre, la variable PromptSet
contenant la valeur de la zone de texte PromptSet cryptée doit être
indiquée. Les mots de passe sont automatiquement identifiés et
décryptés en conséquence par l'Agent Job.
Les mots de passe ayant été cryptés via UCYBCRYP.EXE ne sont
PAS décryptés par l'Agent Job !
La commande exécutée par l'Agent doit être utilisée dans l'onglet
"Script" des Jobs. Exemple pour Windows :
&UC_JOBMD CMD="ping localhost"
Rubriques connexes :
Job - Includes
9
10
Chapter 4 UC4 et NAT
4 UC4 et NAT
Le NAT (Network Adress Translation) désigne un dispositif (par exemple un routeur) qui convertit une
adresse IP en une autre adresse IP.
Il existe également le NPT et le NAPT qui permettent de modifier le port ou l'adresse et le port. Pour une
connexion d'un Agent ou d'autres Clients UC4 à l'UC4 Automation Engine, les éléments suivants
s'appliquent :
1. Il est possible de tout saisir pour l'adresse d'ancrage. Voilà pourquoi elle ne comporte aucun
problème de NAP, NPT ou NAPT.
2. Le problème se pose pour le choix de CP puisque les adresses IP et numéros de port des autres
CP sont fournis par défaut dans le premier CP.
3. Mais, dans la section TCP/IP du fichier INI de l'UC4 Automation Engine, il est possible d'indiquer le
paramètre "hostname" avec un nom d'hôte quelconque. Bien entendu, ce nom d'hôte devra alors
être correctement résolu par tous les Clients. Ainsi, le NAT ne pose aucun problème. NPT et NAPT
ne sont ici pas pris en charge.
Pour la connexion d'un Agent à un autre Agent :
1. Le UC4 Automation Engine communique à l'Agent l'adresse IP et le numéro de port de l'autre Agent
(de Ex1 à Ex2). Si la connexion ne s'établit pas, l'UC4 Automation Engine tente d'établir la
connexion dans l'autre sens (de Ex2 à Ex1).
2. La section HOST du fichier INI peut permettre la résolution de problèmes de NAT. Ici, le paramètre
est le nom UC4 de l'Agent. Pour la valeur, vous pouvez saisir n'importe quelle adresse IP ou
n'importe quel nom DNS.
3. NPT et NAPT avec les modifications de numéro de port ne sont ici pas pris en charge.
Automation Engine
11
5 Codes d'erreur externes
5.1 COBOL - Codes d'erreur des fichiers
Texte d'origine de la description du compilateur
00 Successful completion
02 Indexed files only. One of two possibilities:
- For a READ statement, the key value for the current key is equal to the value of that same
key in the next record in the current key of reference.
- For a WRITE or REWRITE statement, the record just written created a duplicate key value
for at least one alternate record key for which duplicates are allowed.
04 The length of the record being processed does not conform to the fixed file attributes for that
file.
05 The referenced optional file is not present at the time the OPEN statement is executed.
07 Sequential files only. For an OPEN or CLOSE statement with the REEL/UNIT phrase the
referenced file is a non-reel/unit medium.
10 No next logical record exists. You have reached the end of the file.
14 Relative files only. The number of significant digits in the relative record number is larger than
the size of the relative key data item described for that file.
21 Sequentially accessed files only. Indicates a sequence error. The ascending key requirements
of successive record key values has been violated, or, the prime record key value has been
changed by a COBOL program between successful execution of a READ statement and
execution of the next REWRITE statement for that file.
22 Indexed and relative files only. Indicates a duplicate key condition. Attempt has been made to
store a record that would create a duplicate key in the indexed or relative file OR a duplicate
alternate record key that does not allow duplicates.
23 Indicates no record found. An attempt has been made to access a record, identified by a key,
and that record does not exist in the file. Alternatively a START or READ operation has been
tried on an optional input file that is not present.
24 Relative and indexed files only. Indicates a boundary violation arising from one of the following
conditions: An attempt is made to write beyond the externally defined boundaries of a file. A
sequential WRITE operation has been tried on a relative file, but the number of significant
digits in the relative record number is larger than the size of the relative key data item
described for the file.
30 The I/O statement was unsuccessfully executed as the result of a boundary violation for a
sequential file or as the result of an I/O error, such as a data check parity error, or a
transmission error.
34 The I/O statement failed because of a boundary violation. This condition indicates that an
attempt has been made to write beyond the externally defined boundaries of a sequential file.
35 An OPEN operation with the I-O, INPUT, or EXTEND phrases has been tried on a nonOPTIONAL file that is not present.
37 An OPEN operation has been tried on a file which does not support the open mode specified in
the OPEN statement.
12
Chapter 5 Codes d'erreur externes
38 An OPEN operation has been tried on a file previously closed with a lock.
39 A conflict has been detected between the fixed file attributes and the attributes specified for
that file in the program.
41 An OPEN operation has been tried on file already opened.
42 A CLOSE operation has been tried on file already closed.
43 Files in sequential access mode. The last I/O statement executed for the file, before the
execution of a DELETE or REWRITE statement, was not a READ statement.
44 A boundary violation exists.
46 A sequential READ operation has been tried on a file open in the INPUT or I-O mode but no
valid next record has been established.
47 A READ or START operation has been tried on a file not opened INPUT or I-O.
48 A WRITE operation has been tried on a file not opened in the OUTPUT, I-O, or EXTEND
mode, or on a file open I-O in the sequential access mode.
49 A DELETE or REWRITE operation has been tried on a file that is not opened I-O.
9/nnnExtended file status code as shown below.
RT001 Insufficient buffer space. On OS/2, could indicate that the SWAPPATH has not been set
correctly or the SWAPPATH drive is full. Could also indicate an out of memory situation.
RT002 File not open when access tried.
RT003 Serial mode error.
RT004 Illegal file name.
RT005 Illegal device specification.
RT006 Attempt to write to a file opened for input.
RT007 Disk space exhausted.
RT008 Attempt to input from a file opened for output.
RT009 No room in directory (also, directory does not exist).
RT010 File name not supplied.
RT012 Attempt to open a file which is already open.
RT013 File not found.
RT014 Too many files open simultaneously.
RT015 Too many indexed files open.
RT016 Too many device files open.
RT017 Record error: probably zero length.
RT018 Read part record error: EOF before EOR or file open in wrong mode.
RT019 Rewrite error: open mode or access mode wrong.
RT020 Device or resource busy.
RT021 File is a directory.
RT022 Illegal or impossible access mode for OPEN.
RT023 Illegal or impossible access mode for CLOSE.
RT024 Disk I/O error.
RT025 Operating system data error.
Automation Engine
RT026 Block I/O error.
RT027 Device not available.
RT028 No space on device.
RT029 Attempt to delete open file.
RT030 File system is read only.
RT031 Not owner of file.
RT032 Too many indexed files, or no such process.
RT033 Physical I/O error.
RT034 Incorrect mode or file descriptor.
RT035 Attempt to access a file with incorrect permission.
RT036 File already exists.
RT037 File access denied.
RT038 Disk not compatible.
RT039 File not compatible.
RT040 Language initialization not set up correctly.
RT041 Corrupt index file.
RT042 Attempt to write on broken pipe.
RT043 File information missing for indexed file.
RT045 Attempt to open an NLS file using an incompatible program.
RT047 Indexed structure overflow. (Could indicate that you have reached the maximum number of
duplicate keys.)
RT065 File locked.
RT066 Attempt to add duplicate record key to indexed file.
RT067 Indexed file not open.
RT068 Record locked.
RT069 Illegal argument to ISAM module.
RT070 Too many indexed files open.
RT071 Bad indexed file format.
RT072 End of indexed file.
RT073 No record found in indexed file.
RT074 No current record in indexed file.
RT075 Indexed data file name too long.
RT077 Internal ISAM module failure.
RT078 Illegal key description in indexed file.
RT081 Key already exists in indexed file.
RT100 Invalid file operation.
RT101 Illegal operation on an indexed file.
RT102 Sequential file with non-integral number of records.
13
14
Chapter 5 Codes d'erreur externes
RT104 Null file name used in a file operation.
RT105 Memory allocation error.
RT129 Attempt to access record zero of relative file.
RT135 File must not exist.
RT138 File closed with lock - cannot be opened.
RT139 Record length or key data inconsistency.
RT141 File already open - cannot be opened.
RT142 File not open - cannot be closed.
RT143 REWRITE/DELETE in sequential mode not preceded by successful READ.
RT146 No current record defined for sequential read.
RT147 Wrong open mode or access mode for READ/START.
RT148 Wrong open mode or access mode for WRITE.
RT149 Wrong open mode or access mode for REWRITE/ DELETE.
RT150 Program abandoned at user request.
RT151 Random read on sequential file.
RT152 REWRITE on file not opened I-O.
RT158 Attempt to REWRITE to a line-sequential file.
RT159 Malformed line sequential-file.
RT161 File header not found.
RT173 Called program not found.
RT180 End-of-file marker error.
RT182 Console input or console output open in wrong direction.
RT183 Attempt to open line sequential file for I-O.
RT188 File name too large.
RT193 Error in variable length count.
RT194 File size too large.
RT195 DELETE/REWRITE not preceded by a READ.
RT196 Record number too large in relative or indexed file.
RT210 File is closed with lock.
RT213 Too many locks.
RT218 Malformed MULTIPLE REEL/UNIT file.
RT219 Operating system shared file limit exceeded.
5.2 COBOL - Codes d'erreur d'exécution
Texte d'origine de la description du compilateur
Code
Description
d'erreur
Automation Engine
15
001
Insufficient buffer space (Recoverable) -You have tried to open a file directly or indirectly and,
although you have not exceeded your system's file limit, something in your system is unable
to allocate enough memory space for this operation. -Although you can trap this error you
must do STOP RUN as soon as it is reported.
002
File not open when access attempted (Recoverable) -You have tried to access a file without
opening it first. -Open the file with the open mode that you need and try the operation again.
As this error implies that your program logic contains a mistake, you might want to terminate
the run and recode your program.
003
Serial mode error (Recoverable) -You have tried to open a device as a relative or indexed file.
You are trying to execute a device, not a program. -Open the device in the correct mode or
close any open files, do STOP RUN and recode your program. The name of your program is
recognized by the operating system as a valid device. Rename your program.
004
Illegal file name (Recoverable) -A filename contains an illegal character. This could be any
character that is not part of the permitted character set or it could be the system-dependent
delimiter, which on most systems is the space. -Try the file operation again using the correct
filename.
005
Illegal device specification (Recoverable) -Devices to which your COBOL program can write
are defined by the operating system. You have tried to write to a device that is not defined by
your system. -Try the operation again using a device name that your system recognizes.
006
Attempt to write to a file opened for INPUT (Recoverable) -You have tried to WRITE to a file
that is open for input only. -Close the file and open it with a mode such as I-O, which allows
you to write to the file. As this error implies that your program logic contains a mistake, you
might want to terminate the run and recode your program.
007
Disk space exhausted (Fatal) -The disk is full. -This error can be trapped, but once it has been
reported you must do a STOP RUN immediately to terminate your program's run. When your
program has terminated, delete any files that you no longer need. Alternatively, if your
operating system supports this, put a new disk in a floppy disk drive and redirect your
program's file operations to this.
008
Attempt to input from a file opened for OUTPUT (Recoverable) -You have tried to read from a
file that is open for output only. -Close the file and open it with a mode such as I-O, which
allows you to read from the file. As this error implies that your program logic contains a
mistake, you might want to terminate the run and recode your program.
009
No room in directory (Recoverable) -The system cannot write to the specified directory for
one of the following reasons: -The directory does not exist -The directory is full -Your program
cannot find the directory -Create the directory if it doesn't exist. If the directory is full, either
delete any files that you no longer need or, if your operating system supports this, put a new
disk in a floppy disk drive and redirect your program's file operations to it. Alternatively,
specify a different drive or directory for your file operations.
010
File name not supplied (Recoverable) -You have tried to open a file that you have declared as
an external file, but have not named. -Specify the external filename.
012
Attempt to open a file which is already open (Recoverable) -You have tried to open a file
which is already open and so cannot be opened again. -Cancel your second attempt to open
the file. If the fact that the file is already open is acceptable to you, continue to run your
program.
013
File not found (Recoverable) -The operating system has been unable to find a file which you
have tried to access in your program. -Ensure that you are in the correct directory or that a
path to the file concerned exists. You can then try the file operation again. If the error is the
result of a spelling mistake then ask for the correct file and try the file operation again.
16
Chapter 5 Codes d'erreur externes
014
Too many files open simultaneously (Recoverable) -You have tried to exceed the maximum
number of files which you can have open at any one time. This can be a software or an
operating system constraint, but you must not violate it. -Close some of the open files which
you are not currently accessing, and then try to open the relevant file again. You should then
be able to continue to run your program. Depending on your operating system, you might be
able to increase the maximum number of files you are allowed to have open. For example, on
DOS, add the line FILES=128 to your config.sys file. On Novell, add the lines CACHE
Buffers=0 File Handles=128 to your shell.cfg file. See also:/F RTS switch
015
Too many indexed files open (Recoverable) -You have tried to exceed the maximum number
of indexed files which you can have open at any one time. This can be a software or an
operating system restraint, but you must not violate it. -Close some of the open indexed files
which you are not currently accessing, and then try to open the relevant file again. You should
then be able to continue to run your program. (Indexed files count as two files, one for data
and one for the index.)
016
Too many device files open (Recoverable) -You have tried to exceed the maximum number of
device files which you can have open at any one time. This can be a software or an operating
system constraint, but you must not violate it. -Close some of the open device files which you
are not currently accessing, and then try to open the relevant file again. You should then be
able to continue to run your program.
017
Record error: probably zero length (Recoverable) -You have probably tried to access a record
that has had no value moved into it. -Although this error is recoverable in the sense that it can
be trapped, once it has been reported you must execute a STOP RUN statement immediately
and then recode your program to ensure that the COBOL record length is not zero.
018
Read part record error: EOF before EOR or file open in wrong mode (Recoverable) -A part
record has been found at the end of a file. Consequently your run-time system treats the data
file as a record, and not finding a full record, reports this error. -Ensure that the record size you
give when you read from or WRITE to a file is consistent.
019
Rewrite error: open mode or access mode wrong (Recoverable) -You are trying to do a
REWRITE to a file that has not been opened with the correct access mode for this operation.
-Close the file and reopen it in a mode such as I-O, which allows you to do REWRITE
operations on that file. As this error implies that your program logic contains a mistake, you
might want to close any open files and then execute a STOP RUN. You can then recode your
program to eliminate the logic error.
020
Device or resource busy (Recoverable) -You have tried to open a file that is assigned to a
device or resource (for example, a line printer) that is not available at this time. -You can trap
the error status returned by open and retry the open at regular intervals until it succeeds.
021
File is a directory (Fatal) -You have tried to WRITE to a directory instead of to a file.
Alternatively, the attributes are not set up correctly to allow you to access a file. That is, it is
marked as read-only or you don't have sufficient rights to open it. -Recode your program so
that it writes to a file and not to a directory. You need to either change your file access
attributes or recode your program so that it does not violate the existing attributes.
022
Illegal or impossible access mode for OPEN (Recoverable) -The mode in which you are trying
to open a file violates the General Rule of COBOL for that type of file; for example you might
have opened a line sequential file in the I-O mode. -Open the file with a mode that is
compatible with that type of file.
023
Illegal or impossible access mode for CLOSE (Recoverable) -The mode in which you are
trying to close a file is not possible for that type of file. -Close the file with a new access mode
which is compatible with that type of file, or execute a STOP RUN statement and recode your
program.
Automation Engine
17
024
Disk input-output error (Recoverable) -You might have performed a read after a WRITE, or
there might be either a verification failure or a parity error. -In some circumstances this error is
fatal, but if it occurs during a read you can trap it and then do a close on the file before
executing a STOP RUN statement.
025
Operating system data error (Fatal) -You are trying to set up terminal characteristics for a
device which is not a terminal. -Recode your program.
026
Block I-O error (Fatal) -An error has occurred while you are trying to access a disk. This could
be the result of a corrupt disk. -If you have a corrupt disk try to run your program again using
your backup copy.
027
Device not available (Recoverable) -You are trying to access a device which either is not
attached to your machine or if attached is not on-line. -Attach the device to your machine and
ensure that it is on-line. Repeat the file operation.
028
No space on device (Fatal) -You have tried a file operation such as WRITE for which
insufficient space is available on your disk. -When your program has terminated you should
delete some of the files or directories on your current logged in disk. Ensure that you delete
sufficient files on your disk so that you have enough room to carry out successful file
operations.
029
Attempt to delete open file (Recoverable) -You have tried to perform a DELETE FD operation
on an open file. -Close the file before performing the DELETE FD operation.
030
File system is read-only (Recoverable) -The file system which you are using is read-only,
which effectively means that it is write-protected. You have tried to change a file in some
way, for example you might have tried to WRITE to a file or to DELETE information in it. -You
should abandon your attempt to alter the file unless you can make your own personal copy of
it. You should then be able to alter the contents of your copy, but not of the original source.
031
Not owner of file (Recoverable) -You are trying an operation on a file but the file's owner has
not given you the necessary permission for that operation. You could for example be trying to
alter the access modes for a file, which only the file's owner can do. -You should abandon
your tried file operation unless the file's owner gives you the permission necessary to do the
operation you want to carry out.
032
Too many indexed files, or no such process (Recoverable) -You have tried to open an indexed
file but the number of files that you currently have open is the system limit. Alternatively, you
could be trying to use a process id which does not exist, or which your operating system no
longer recognizes. -You should close some of the indexed files which you are no longer
accessing, and you should then be able to open the file you require. In this case you must
rewrite your code so that it uses a process id which your system recognizes.
033
Physical I-O error (Fatal) -You have a hardware error of some type. Perhaps you have not put
a disk in the relevant drive or you might have tried to WRITE to a disk but the processor
detected hardware interface has failed.
-You should try to correct the fault in your hardware; for example put a disk in the necessary
drive.
034
Incorrect mode or file descriptor (Recoverable) -You are either trying to write to a file which is
open for read purposes only, or read a file which is open for write purposes only. -You should
close the file and reopen using the correct access mode. As this error implies that your
program logic contains a mistake, you might want to close any open files, execute a STOP
RUN statement and then recode your program to eliminate the logic error. Shareable files
opened INPUT (read-only) by the COBOL system still require write-permission (from the
operating system) to enable temporary locking to take place.
18
Chapter 5 Codes d'erreur externes
035
Attempt to access a file with incorrect permission (Recoverable) -You are trying a file
operation which you do not have sufficient permission to achieve. For example you could be
trying to write data to a file which has been set up with the read attribute only. -If you are the
owner of the file you can alter the attributes of the file so that you have the permission needed
to effect the particular file operation you were trying. If you are not the owner of the file you
cannot to carry out that operation successfully unless you copy the file and make the
changes to the copy only. You cannot alter the source file.
036
File already exists (Recoverable) -You are trying an inappropriate operation on an already
existing file. -As this error implies that your program logic contains a mistake, you might like
to recode your program to eliminate this mistake.
037
File access denied (Fatal) -Your attempt to access a file has been denied by the operating
system. You might have tried to write to a write-protected file or you could have tried to read
from an output device. -Alter the access permission on the relevant file. Access can be readonly, if you just want to read the contents of the file without making any changes, or it can be
read and write in which case you can alter its contents.
038
Disk not compatible (Fatal) -You have tried to access a disk that is incompatible with the
current version of your operating system. This could be because it was created under a
previous version of the system or it could have been created under a completely different
operating system. You would also receive this error if you tried to load a disk with a name that
clashed with a disk that was already loaded. -If the error is a result of a clash of names you
can rename one of the disks and then you can load both disks together if this is what you
want.
039
File not compatible (Fatal) -You have tried to access a file that is not compatible with the
structure of files under the current release of your software. This could be because the file
was created either under a different operating system or under a previous version of your
current system. -You should create a new copy of the file which has the correct structure.
040
National Language initialization not set up correctly (Fatal) -You have tried to use the
additional language variants, but the environment or side file that is required to set up the
language either has not been set up correctly, or does not exist, or is invalid. This might be
because you have the LANG environment variable set for use by another system in a format
not recognized by this COBOL system. -Set up the required environment or side file before
you try to run the program again. Use the COBLANG environment variable to set the locale
information for the COBOL system. See the chapter NLS Support in your Programmer's
Guide to Writing Programs.
041
Corrupt index file (Recoverable) -Your run-time system does not recognize the control
information for an indexed file and as the index has been corrupted in some way the data in
the file is no longer accessible by your system. This error is recoverable in the sense that it
can be trapped but should you receive it, you can do little except to close any open files and
stop your program's run. -You should rerun your program using the backup copy of that file. If
you have added a great deal of information to the file since you last took a backup you might
like to rebuild the file using the Rebuild utility, which reads the data (if this has not been
corrupted) and builds a new index for it.
042
Attempt to write on broken pipe (Recoverable) -One of the following has occurred: -Your
program has created a process as a result of a DD_ logical filename mapping assignment (for
example, the process might be a line printer spooler). The process was not created properly,
or has ended prematurely. This error occurs when your program tries to write to the process. Your application has terminated abnormally or prematurely, thus breaking the pipe. -You can
trap the error status returned by the write operation, then open the file again.
Automation Engine
19
043
File information missing for indexed file (Fatal) -The system has crashed on your program's
previous run, while the file was open. Information was probably added to the end of the file,
but the directory information was not updated and so that data cannot be accessed by your
system. Alternatively, you have copied the indexed file from one disk to another but have
copied either only the data part of the file or only the index. -If the error is the result of a crash
then whether you can access the necessary data or not is entirely system dependent. If,
however, it is the result of a faulty copy you should be able to restore the missing part of the
file from the.dat or .idx file.
044
Attempt to OPEN an NLS file in a non-NLS program (Fatal)
-The logical filename is preceded by "%NLS%", but the program which OPENS the file has
been compiled without the NLS directive set: the OPEN fails.
045
Attempt to OPEN an NLS file using incompatible language definition (Fatal) -The NLS control
information for a file in your program does not match the same NLS control information in the
header of your index file. Alternatively, your index file has become corrupted. -Rebuild your
index file, or rerun your program using the backup copy of that file. If you have added a great
deal of information since you last took a backup, you might want to rebuild the file using a
utility that is able to read the data, if it is not corrupt, and build a new index for it.
046
NLS support module not found (Fatal) -Your system could not find the National Language
Support module COBNLSMG. Alternatively, your system cannot find cobnls.dll (OS/2),
cobnls.dle (DOS), or cobnls.dlw (Windows). -Ensure that cobnlsmg.gnt is present in either
utils.lbr or in a directory on COBDIR, or, if your program is linked, ensure that cobnlsmg.obj is
linked in to it. Ensure that cobnls.dle is present in utils.lbr , or that cobnls.dlw is present in a
directory specified in COBDIR, or that cobnls.dll is present on the LIBPATH.
047
Indexed structure overflow (Fatal) -The structure of your indexed file contains a fault. You
have probably tried to put another entry in the index when there is no room for it. Alternatively,
you have tried to access an old format indexed file, created perhaps using CIS COBOL. -If
your index has no room for further entries you should reorganize your file. If you have tried to
access an old format indexed file, you can run the Rebuild utility to check the consistency of
this indexed file, and to construct a new indexed file if the old one was found to be corrupt.
See your Programmer's Guide to File Handling for details of the Rebuild utility.
048
Attempt to divide by zero (Fatal) -You are executing a program that is trying to perform a fixedpoint divide by zero. Alternatively, if you have COBFSTAT environment variable set to
HOSTSTAT, this could be mainframe file status code "90". -Either recode your program so
that you can trap the error with an ON SIZE ERROR clause, or run your program without the
RTS O switch set, or recompile your program without the CHECKDIV"OSVS" directive set.
048-057
Host file status, not an RTS message -If you have COBFSTAT environment variable set to
HOSTSTAT, this is a mainframe file status code "9x", where x is given by subtracting 48
from the error number.
055
Routine table overflow (Fatal) -You have tried to load too many programs simultaneously.
Alternatively, if you have COBFSTAT environment variable set to HOSTSTAT, this could be
mainframe file status code "97". -Cancel any programs that you are no longer using, or use
fewer separate programs.
065
File locked (Recoverable) -You have tried to open a file which has already been locked, or
opened for output by another user. Alternatively, you have tried to lock or open for output a file
which another user already has open. -Your program can inform the system operator (if there
is one) that it is unable to access this file and should wait until the other user has finished
using the file and closes it. You should then be able to continue to run your program.
066
Attempt to add duplicate record key to indexed file (Fatal) -You have tried to add a duplicate
key for a key which you have not defined as being able to have duplicates. -As this error
implies that your program logic contains a mistake, you probably should recode.
20
Chapter 5 Codes d'erreur externes
067
Indexed file not open (Recoverable) -You are trying to access an indexed file which you have
not opened. -Open the file in the relevant access mode and then retry the unsuccessful file
operation.
068
Record locked (Recoverable) -You have tried to access a record which is currently locked by
another user. -Your program can inform the system operator (if there is one) that the record is
currently locked, and you should then wait until the other user has released the lock on that
record. You should then be able to access the relevant record. You should not continually
retry to gain access to the record without operator intervention, as this could result in your
application hanging.
069
Illegal argument to isam module (Fatal) -This is the result of an internal system error. -Contact
Technical Support who will help you find the cause of your error and how it can be rectified.
070
Too many indexed files open (Recoverable) -You are trying to open an indexed file but you
have already exhausted the system limit which specifies how many of these files can be
opened at any one time. -Close some of the open indexed files which you are not currently
accessing. You should then be able to open the indexed file which you require and to continue
the program run.
071
Bad indexed file format (Fatal) -You are either using a file which has been corrupted, or there
is an internal system error. -If the disk you are using is corrupt, rerun your program using your
backup copy of the disk. If this is not the cause of the error then you should contact Technical
Support who will help you find the cause of your error and how it can be rectified.
072
End of indexed file (Fatal) -This is the result of an internal system error. -Contact Technical
Support who will help you find the cause of your error and how it can be rectified.
073
No record found in indexed file (Fatal) -This is the result of an internal system error. -Contact
Technical Support who will help you find the cause of the error and how it can be rectified.
074
No current record in indexed file (Fatal) -This is the result of an internal system error. -Contact
Technical Support who will help you find the cause of the error and how it can be rectified.
075
Indexed data file name too long (Fatal) -When creating indexed files, the extension .idx is
added to the user-defined filename, and so your filename must not exceed x-4 characters in
length, where x is the maximum length of filename. See your Programmer's Guide to File
Handling for details. -Rename the file with a shorter filename, that is, one that is less than 10
characters in length.
076
Can't create lock file in /isam directory (Fatal) -For some reason your system is unable to
create a lock file in the /isam directory. One reason for this could be that in its previous run
your program terminated abnormally (perhaps due to a power failure) leaving some files
locked. -You should manually remove all of the files that are still locked from the /isam
directory before you can successfully run your program.
077
Internal ISAM module error (Fatal) -This is the result of an internal system error. -Contact
Technical Support who will help you find the cause of your error and how it can be rectified.
078
Illegal key description in indexed file (Fatal) -This is the result of an internal system error. Contact Technical Support who will help you find the cause of your error and how it can be
rectified.
079
COBCONFIG syntax error (Fatal) -An error exists in the run-time configuration sidefile
accessed via the environment variable COBCONFIG. -Check your syntax against your
Object COBOL User Guide. You might have used incorrect syntax, or syntax that is not
compatible with the type of RTS tuneable you are configuring (this could include assigning an
illegal value to the RTS tuneable).
Automation Engine
21
081
Key already exists in indexed file (Fatal) -This is the result of an internal system error. Contact Technical Support who will help you find the cause of your error and how it can be
rectified.
082
CALL convention not supported (Fatal) -The CALL convention you have specified is not
supported. -See your Object COBOL User Guide for a list of supported CALL conventions.
086
Remote file system failure (Fatal)
099
Illegal operation in SORT/MERGE module (Fatal) -A SORT or MERGE module has received
a RELEASE operation outside the Input procedure, or a RETURN operation either outside the
Output procedure, or before the Input procedure has terminated correctly. -Recode your
program so that RELEASE and RETURN operations are issued by the appropriate
procedures.
100
Invalid file operation (Fatal) -You have tried a file operation which violates a general rule of
COBOL in some way. The most likely cause of this error is that you have tried a rewrite on a
sequential file opened I-O, or on a relative file with access mode sequential also opened I-O,
without preceding it with a successful read NEXT. -Recode your program to ensure that the
REWRITE statement in error is preceded by a read NEXT.
101
Illegal operation on an indexed file (Fatal) -This is the result of an internal system error. Contact Technical Support who will help you find the cause of your error and how it can be
rectified.
102
Sequential file with non-integral number of records (Fatal) -You have either specified an
incorrect record length for a sequential file, or the sequential file you are trying to access is
corrupt in some way, or the file which you have specified is not a sequential file. -Recode your
program so that it specifies the correct type of file, or if the error is the result of a corrupt file,
try to run the program again using a backup copy of that file.
103
Parameter cannot be passed BY VALUE (Fatal)
104
Null file name used in a file operation (Fatal) -You specified a data-name for a filename
instead of a literal, and the data item contained only spaces when you tried to open the file. Recode your program specifying the correct filename.
105
Memory allocation error (Fatal) -The run-time system is unable to allocate sufficient memory
space to successfully carry out the tried operation, probably because of insufficient memory
space on your system. -You should obtain more memory in which to run your program. Refer
to your operating system documentation for details of how you can obtain more memory, if
this is possible.
106
Dictionary error (Fatal) -This could be the result of a read or write error to file or disk, but it is
more likely to be the result of an internal system error. Alternatively, your application might
have called many programs without canceling them afterward, so that memory becomes
exhausted during Animation. -Contact Technical Support who will help you to find the cause
of your error and how it can be rectified. Ensure that as much memory as possible is available
during Animation by canceling any program you do not currently need to access.
107
Operation not implemented in this run-time system (Fatal) -You are trying to perform a file
operation which your run-time system does not support. -You should recode your program so
that it does not try such operations, or you should acquire a version of your system that does
support this facility.
108
Failure to initialize data division (Fatal) -The run-time system cannot load your program
properly because the data needed to correctly initialize the Data Division has become
corrupted. -You should compile your program again to try to obtain good intermediate code.
22
Chapter 5 Codes d'erreur externes
109
Invalid checksum in run-time system (Recoverable) -The internal information in the run-time
system has been altered. The run-time system might have become corrupted, or you might
have illegally tried to change the internal run-time system information.
110
Generated code not supported by this RTS (Fatal) -Contact Technical Support who will help
you to find the cause of the error and how it can be rectified.
111
Incompatible Class Library and Run-time Environment versions (Fatal) -The version numbers
for these components do not match. -Check that you have fully installed both the Class
Library and the Run-time Environment from the same version of Object COBOL. If you have
more than one version installed, check that your PATH, LIBPATH, and COBDIR
environment variables specify an appropriate path for the version you are using.
112
Unable to locate/access the required security key (Recoverable) -The run-time system
cannot locate or cannot access the coded security key (dongle) that is required to execute
this application. -Connect the security key that was supplied with your COBOL system to the
parallel port of your computer, then re-run the application.
114
Attempt to access item beyond bounds of memory (Fatal) -Memory access violation has
been detected by your operating system.
115
Unexpected signal (Fatal) -A signal the run-time system was not expecting has been caught.
116
Cannot allocate memory (Fatal) -For some reason a part of your run-time system is unable to
allocate you sufficient memory to enable you to execute your code. -You should try to reduce
memory usage by canceling programs that are not in use, then try the operation that caused
this message again.
117
Bad collating sequence (Fatal) -This is an internal system error. -Please contact Technical
Support who will help you to find the cause of the error and how it can be rectified.
118
Symbol not found (Fatal) -You are unable to load your object file. You have tried to call a
program that has not been specified in the COBPATH environment variable. -Check that your
COBPATH has been set up correctly. If not, revise your COBPATH to include the program
being called.
119
Symbol redefined (Fatal) -The RTS has detected a symbol (for example, data item, entry
point or module name) which is already defined. -You can recode your application to remove
the naming duplication. If you are not linking with a non-COBOL function, you can use the -e
RTS switch (32-bit RTS only).
120
Symbol string table of zero size (Fatal) -You probably have a malformed object file. -Once the
program has terminated you must correct your object file. If this does not work, contact
Technical Support who will help you to find the specific cause of the error.
121
Symbol is not in TEXT section (Fatal) -You have tried to call a subprogram that is not an
executable program. Alternatively, you have used the same name for a called program as for
a previously defined data item. -Check that the subprogram being called is an executable one.
If required, correct the subprogram's name in the calling program and resubmit it to your
COBOL system. Once your program has terminated, recode it to remove the naming
duplication. Resubmit your program to your COBOL system.
122
Coblongjmp() called below level of cobsavenv() (Fatal) -You might have returned control to a
higher level in the CALL/PERFORM hierarchy than the level at which cobsetjmp was called.
Coblongjmp must be called only from the same or from a lower level in the CALL/PERFORM
hierarchy as cobsavenv was. See your Object COBOL User Guide for details of cobsavenv
and coblongjmp.
Automation Engine
23
123
Unknown relocation type (Fatal) -You are using incompatible versions of the object file and
the COBOL run-time library. -Once the program has terminated, resubmit your object file to
your COBOL system with the current version of your COBOL run-time library. If this does not
work, contact Technical Support who will help you to find the specific cause of the error.
124
Communication failure during I/O request to the central file handler
125
All locks/ current transactions canceled due to exceeding time limit
126
Record size exceeds system limit (Fatal)
129
Attempt to access record zero of relative file (Recoverable) -The value specified in the
RELATIVE KEY data item contains the value zero. -You should ensure that the value in the
RELATIVE KEY data item is greater than zero, then continue to run your program.
135
File must not exist (Recoverable) -The operating system has been unable to find a file which
you have tried to access in your program. -Ensure that you are in the correct directory or that a
path to the file concerned exists. You can then try the file operation again. If the error is the
result of a spelling mistake then ask for the correct file and try the file operation again.
137
Illegal device specification - not mass storage
138
File closed with lock - cannot be opened (Recoverable) -You are trying to open a file which
you previously closed with lock, which violates one of the general rules of COBOL
programming. -You cannot open the relevant file. As this error implies that your program logic
contains a mistake, you might want to close any remaining open files, execute a STOP RUN
statement and recode.
139
Record length or key data inconsistency (Recoverable) -A discrepancy exists between the
length of a record, or the keys which you have specified, in your current program and its
definition in the program in which it was first opened. -Your program has a fault, so you
probably should edit your code, then resubmit it to your COBOL system before running it
again.
141
File already open - cannot be opened (Recoverable) -You have tried to open a file which is
already open and so cannot be opened again. -Cancel your second attempt to open the file
and continue to run your program if the fact that the file is already open is acceptable to you.
However as this error implies that your program logic contains a mistake, you might want to
close any open files, execute a STOP RUN statement and then recode.
142
File not open - cannot be closed (Recoverable) -You have tried to close a file which is not
open. -You can abandon your attempt to close the relevant file and continue to run your
program. However, as this error implies that your program logic contains a mistake, you might
want to close any open files, execute a STOP RUN statement and then recode.
143
Rewrite/delete in sequential mode not preceded by successful read (Recoverable) -You have
failed to do a successful read on a sequentially accessed file trying a REWRITE or DELETE
on some of the information contained in that file. -If the previous read was successful then
perform a read on the relevant file before you retry the unsuccessful REWRITE or DELETE
operation. If the previous read was also unsuccessful close the file, execute a STOP RUN
statement and then recode your program before you next run it.
144
Boundary violation (Recoverable) -You have tried to write a record to a variable length record
file, the length of which is not within the defined range for that file. -Recode your program.
146
No current record defined for sequential read (Recoverable) -The file position indicator in your
file is undefined owing to a failed read/START or INVALID KEY condition. You have tried to
read another record in the file but as the current record is undefined the system cannot find the
start of the record for which you have asked. -You should try a START operation, and
continue to do so until the file position indicator is updated successfully.
24
Chapter 5 Codes d'erreur externes
147
Wrong open mode or access mode for read/start (Recoverable) -You have tried to carry out a
read or start operation on a file which has not been opened for INPUT or I-O, or which is not
open at all. -Open the file for I-O or for INPUT and you should then be able to continue to run
your program. However, as this error implies that your program logic contains a mistake, you
might want to close any files which are open, execute a STOP RUN statement and then
recode.
148
Wrong open mode or access mode for write (Recoverable) -You have tried to write to a file in
sequential access mode that you have not opened for OUTPUT or EXTEND, or you have
tried to write to a file in random or dynamic access mode that has not been opened INPUT or
I-O, or which is not open at all. -Close the file and reopen it with the correct open mode for the
file type. However, as this error implies that your program logic contains a mistake, you might
want to close any files that are open, execute a STOP RUN statement and then recode.
149
Wrong open mode or access mode for rewrite/delete (Recoverable) -You are trying to do a
REWRITE or a DELETE on a file that you have not opened for I-O, or which is not open at all.
-Close the file and reopen for I-O. However, as this error implies that your program logic
contains a mistake, you might want to close any open files, execute a STOP RUN statement
and then recode.
151
Random read on sequential file (Recoverable) -You are trying to do a random read on a file
which has sequential organization. -Read the file with the correct access mode. As this error
implies that your program logic contains a mistake, you might like to close any files which are
open, execute a STOP RUN statement and recode.
152
REWRITE on file not opened I-O (Recoverable) -You have tried a REWRITE on a file that is
not open I-O. -Close the relevant file and open it for I-O operations. You should then be able to
carry out the REWRITE operation successfully. However, as this error implies that your
program logic contains a mistake, you might want to close any open files, execute a STOP
RUN statement and then recode.
153
Subscript out of range (Fatal) -A subscript which you have used in your program is out of the
defined range, that is, it is either less than one or it is greater than the number of occurrences
of the item. -You should recode your program.
154
PERFORM nested too deeply (Fatal) -This error usually results if you have used GO TO to
jump out of the range of a PERFORM rather than to jump to an EXIT statement at the end of
its range. -When your program has terminated you should to recode your program to ensure
that the GO TO in question jumps to an EXIT statement at the end of the PERFORM's range.
155
Illegal command line (Fatal) -The run-time system does not recognize as valid the command
line format you have specified. Alternatively, the generic command-line interpreter, which
must be present if your program is to be run successfully, is not found on your system.
Alternatively, you have set an invalid COBSW value. -Rerun your application with a valid
command line. Make sure that the interpreter is present to enable your system to pick up the
commands correctly and then rerun your program. Reset COBSW to a valid value.
156
Too many parentheses in compute statement (Fatal) -You have coded a COMPUTE
statement which is too complex for your system to handle successfully. -You should recode
your program. We strongly advise you to break the relevant COMPUTE statement into a
number of simpler statements.
157
Not enough program memory: object file too large to load (Recoverable) -Either your program
is too large for the available memory space, or the stack is full. -If you have specified the ON
OVERFLOW/EXCEPTION clause in the relevant CALL statement, the error is recoverable.
Any associated imperative statement is executed before the next instruction.
Automation Engine
25
158
Attempt to REWRITE to a line-sequential file (Recoverable) -You have used the REWRITE
statement in conjunction with a file whose organization is line sequential. The REWRITE
statement cannot be used with line sequential files. -Close the file in error before executing a
STOP RUN statement to ensure that you do not lose any data from it. Recode your program
to make the organization of the file to which you want to do a REWRITE either sequential,
indexed sequential, or relative.
159
Malformed line-sequential file (Recoverable) -A line-sequential file which you are trying to
access is corrupt in some way. -Rerun your program using the backup copy of that file.
160
Overlay loading error (Recoverable) -An error has occurred while trying to load the
intermediate code for an independent segment. The segment is either missing or corrupted in
some way. -If the segment is missing, locate it. If you cannot find it, or if it is present and
corrupt, resubmit your program to your COBOL system.
161
Illegal intermediate code (Fatal) -The intermediate code which is currently being processed is
not valid code. You are probably trying to execute a corrupted file or one which has not been
submitted to your COBOL system successfully. -You should resubmit your source program
to your COBOL system, to try to obtain uncorrupted intermediate code.
162
Arithmetic overflow or underflow (Fatal) -You are executing a program that is trying to perform
a floating-point divide by zero. -You should recode your program to avoid this illegal operation.
163
Illegal character in numeric field (Fatal) -By default the value which you enter into a numeric or
numeric edited field is checked to ensure that it is numeric. You have entered either
nonnumeric characters or uninitialized numerics into numeric or numeric edited fields: these
are automatically space filled and are thus classified as nonnumeric items. -You must adjust
your code so that no invalid data is used. You can locate the invalid numeric data in your code
by setting the +F switch on, and animating your program until you receive this error. You
might need to use one of the Compiler directives, BADSIGNS, HOST-NUMCOMPARE,
SIGNCOMPARE or SPZERO, to resolve invalid data in numeric fields. See your Object
COBOL User Guide for details of these directives.
164
Run-Time subprogram not found (Fatal) -You have tried to call a subroutine whose entry
address has not been set up in your run-time system. -Check to see that you used a valid call
number in the unsuccessful subroutine call. If not, revise your code to contain a call number
which your system recognizes. If you did use a valid call number but still received this error
you should contact Technical Support.
165
Version number incompatibility (Fatal) -One or more of the run-time support modules is
incompatible with the run-time system you are using. The name of the incompatible support
module is displayed. Alternatively, the run-time system you are using is incompatible with the
version of your COBOL system. Either "RTS" or the name of the run-time system file is
displayed: coblib.dll (OS/2), coblib.dle (DOS) or coblib.dlw (Windows). -Reinstall the support
module, using your installation disks. Reinstall the run-time system file, using your
installation disks. If no support module name is displayed, you have done one of the
following: -Used intermediate code which has been produced on a version of your COBOL
system that is incompatible with the run-time system you are using. Your RTS, therefore,
cannot execute correctly any generated code you are producing or have already produced
from this intermediate code. -Tried to execute a file which is not your COBOL system's
intermediate or generated code.
166
Recursive COBOL CALL is illegal (Fatal) -You have tried to call a COBOL module that is
already active. -You should recode your program.
167
Too many USING items (Fatal) -The list of items which you have supplied in a
CALL....USING statement is longer than the run-time system can handle. -Once your
program has terminated recode it with group items rather than elementary items before
rerunning it.
26
Chapter 5 Codes d'erreur externes
168
Stack overflow (Fatal) -You have nested a PERFORM statement or a series of CALL
statements too deeply. Alternatively, if you have specified the CHECKSTACK directive
when compiling your program, an incorrect number of parameters might have been used on a
call, and as a result the stack has been corrupted. -Edit your program to reduce the number of
levels in the nested PERFORM or CALL statement. If the CHECKSTACK directive has been
used, determine which call is at fault and edit the source to provide the correct number and
size of parameters.
169
Illegal configuration information (Fatal) -You have tried an operation for which your machine is
not configured; the most likely cause of this is that Adis is not configured correctly. -Check
that Adis is configured correctly. See your Programmer's Guide to Creating User Interfaces
for details of how you can reconfigure Adis.
170
System program not found (Fatal) -A system program, for example Adis or ExtFH, is not
present on the current logged-in drive. -Ensure that all the system programs are available on
the logged-in drive and copy those which are not currently present using your backup system
disk. Once all the necessary system programs are available you can run your program.
171
Japanese operations illegal with this RTS (Fatal) -You are trying to perform Japanese
operations with a non-Japanese run-time system, or you have used a Japanese version of
your COBOL system to produce code which you are now trying to run using a non-Japanese
run-time system. -You should resubmit your program using a non-Japanese run-time system,
or if you still want your program to perform Japanese operations, you should acquire a
Japanese run-time system.
172
Recursive non-MF PERFORM is illegal (Fatal) -You have tried full recursion of a PERFORM
statement in a program that was submitted to your COBOL system with the OSVS parameter
of the PERFORM-TYPE directive specified. That is, you have tried to end two PERFORMs
with the same return address. -You should either resubmit your program to your COBOL
system with a parameter other than OSVS specified for the PERFORM-TYPE directive, or
recode your program so that each PERFORM has its own unique return address before you
resubmit it to your COBOL system with the MF parameter of the PERFORM-TYPE directive
specified.
173
Called program file not found in drive/directory (Fatal) -You have tried to call a program which
is not present on your current logged-in drive or directory, or in a directory pointed to by the
COBDIR environment variable. -Once your program has terminated you should copy the
relevant file into your logged-in drive or directory. If insufficient space is available, you should
set the COBDIR environment variable to search the directory or drive on which the file is
present when your program calls it. Once you have taken these steps, run your program
again.
174
Imported file not found (Fatal) -You have tried to load a .dll file which contains references to
another .dll file which cannot be found by the operating system. -Locate the missing file and
ensure it is located on the default search path for your operating system.
175
Attempt to run intermediate code program which had severe errors in it (Fatal) -You are trying
to run a program that produced severe faults when you submitted it to your COBOL system
with the run-time switch E turned off. Alternatively, you could try to run the program with the E
run-time switch set, though this might not give the desired results. -You should edit your
source code to correct all the severe faults, resubmit it to your COBOL system, then run the
intermediate code that is produced. When your program is being animated, Animator reports
this error and enables you to continue to run the program. See also: E RTS switch
176
Illegal intersegment reference (Fatal) -You might have a corrupted file. Alternatively, your
code contains a segment reference for the Forward Reference Table which is illegal. Resubmit your source code to your COBOL system. If you receive this error again, contact
Technical Support who will help you to find the specific cause of the error.
Automation Engine
27
177
Attempt to cancel program failed (Fatal) -You have tried to remove a currently executing
program or its parents or grandparents, from memory. Alternatively, you have tried to cancel a
DLL, either directly or indirectly as an imported DLL, that contains an entry point which has
been registered as an EXIT LIST function via the OS/2 API call DosExitList. -Once your
program has terminated you need to recode your program to ensure that you do not try to
cancel a program (or its parents or grandparents) while it is still being executed. Locate the
erroneous DLL and ensure that the EXIT LIST function is removed before you cancel the DLL.
If you cannot recode the DLL, you can set the O RTS switch to force a logical cancel on the
DLL. See also:D2 RTS switch O RTS switch
178
Error during save (Fatal) -You cannot save the information which your program has generated.
This can be caused by several different reasons but one of the most common causes is that
you have tried to Build a module that is too large for the available memory space. -If the error
is caused by a lack of space you can either delete some of the files which you no longer need
on your current disk, or insert a new floppy disk to take the output from your program. You
should then be able to rerun your program and save the information given by it.
179
Error during chain (program not found) (Fatal) -You have tried to chain to another program
which your system is unable to find. -Once your program has terminated you should copy the
relevant file into your logged-in drive or directory. If insufficient space is available, you should
set the COBDIR environment variable to search the directory or drive on which the file is
present when your program calls it. Once you have taken these steps, run your program
again.
180
End-of-file marker error (Fatal) -A file-marker used to indicate that the end-of-file has been
reached is missing from one of your files. -You should resubmit your code to your COBOL
system, or use a debugger to place the end-of-file marker at the end of the file. You can then
rerun your program.
181
Invalid parameter error (Fatal) -A parameter which you have used is not one which is
recognized by your system. You have probably used a parameter for a run-time system
subprogram which is not in the first 64K of the Data Division. -Revise your code to contain a
parameter which is known by your system. That is, ensure that the parameter is in the first
64K of the Data Division.
182
Console input or console output open in wrong direction (Fatal) -You are either trying to read
input from the screen or write to the keyboard. -You should recode your program.
183
Attempt to open line sequential file for I-O (Fatal) -You have tried to open a line-sequential file
in the input-output open mode, but this mode is not supported for files with this organization. When your program has terminated you should recode your program to ensure that the file
with organization line sequential is opened for input, output, or extend. You can then rerun
your code.
184
ACCEPT/DISPLAY I-O error (Fatal) -You have either tried to read input from the screen or
write to the keyboard, or the ADIS module has not been able to open your terminal's channels
for I-O. -Your program logic contains a mistake, so you must recode.
185
File malformed (Recoverable)
186
Attempt to open stdin, stdout or stderr with incorrect mode (Recoverable) -You have tried to
open either a standard input file with output mode, or some other file in an incorrect mode.
187
Run-time system not found on $COBDIR path (Fatal) -The run-time system cannot be found
on the path you have set up in the COBDIR environment variable. Alternatively, you might not
have installed your COBOL system correctly. -Ensure that the run-time system is on the path
you have set up in the COBDIR environment variable. Alternatively, ensure that your COBOL
system has been installed correctly. If it has not, you must reinstall your COBOL system.
28
Chapter 5 Codes d'erreur externes
188
Filename too large (Fatal) -A filename which you have used has more characters than the
maximum number allowed by your operating system. -You should recode your program to
check the length of the file in error, and rename it with a shorter filename. You can then run
your program again.
189
Intermediate code load error (Fatal) -You are unable to load your intermediate code. You might
have tried to load intermediate code that either has not been successfully produced, or has
been corrupted in some way. -Try to obtain good intermediate code, for example, by
resubmitting (or submitting) your source code to your COBOL system. You should then be
able to load your code and run the program successfully.
190
Too many arguments to CALL (Fatal) -A CALL statement in your program cannot be
successfully executed because of the number of arguments which you have used with it. When your program has terminated you can recode it using group items rather than
elementary ones. You should then be able to run your program successfully.
191
Terminal type not defined (Fatal) -Your terminal type is undefined, so your operating system is
unable to drive your terminal. -Set up the necessary environment for your terminal.
192
Required terminal capability description missing (Fatal) -A compulsory entry, for example
cursor movement or clear screen, is missing from your terminal configuration database. -Add
the missing entry to your terminal configuration database.
193
Error in variable length count (Fatal) -The intermediate code which is currently being
processed is not a valid operation. You are probably trying to execute a corrupt file or one
which has not been produced. -You should resubmit your source code to your COBOL
system.
194
File size too large (Fatal) -A file which your program is accessing is too large for successful
execution to continue. -When your program has terminated you should recode your program
spreading the data over more than one file to ensure that no file becomes too large for your
operating system to handle. Having recoded your program you can then rerun it.
195
DELETE/REWRITE not preceded by a read (Fatal) -Before a DELETE or a REWRITE
statement can be successfully executed in sequential access mode the last input-output
statement executed for the associated file must have been a successful read. In your code no
read statement precedes your tried DELETE or REWRITE. -When your program has
terminated, recode your program, making sure that the last input-output statement to be
executed before the DELETE or REWRITE is a READ statement.
196
Record number too large in relative or indexed file (Fatal) -The relative record key has
exceeded the system limit, that is, the file is too large for the system to handle. Alternatively,
the record key which you have specified is too large for the system to deal with successfully,
or the pointer to the record has been corrupted in some way so that it is either too large or it is
not a multiple of the record length.
197
Screen handling system initialization error (Fatal) -This error can be caused by one of the
following: -Your display adapter is in the wrong mode. -Your screen handling interface has not
been correctly initialized because your terminal does not have the required capabilities. -Your
terminfo file is corrupted. -Memory has been incorrectly allocated. -If you are using a DOS or
OS/2 system, the monitor must be in alphanumeric display mode rather than graphics display
mode. You can set the display mode to a valid alphanumeric mode by using the DOS MODE
utility and then rerunning your program. If you are using a UNIX-type system, you must check
that your terminfo file contains the correct entry for your terminal. If your terminfo file is
corrupt, or your screen handling interface has not been correctly initialized, you must advise
your system administrator of the problem, and he will take steps to try to correct it. If your
memory has been incorrectly allocated, you must rerun your program.
Automation Engine
29
198
Load failure (Fatal) -The system cannot load a program, usually because of insufficient
memory. Alternatively your program has run out of memory during the loading or reloading of a
file. This occurs more frequently during Animation because of the extra memory required
during Animation. -Make more memory available and then rerun your program. Ensure that as
much memory as possible is available during Animation by canceling any program you do not
currently need to access.
199
Operating System error code lies outside expected range (Fatal) -A system call has returned
an unexpected error number which is not documented. -Contact Technical Support who will
help you to find the specific cause of this error.
200
Run-time system internal logic error (Fatal) -The amount of memory available on your
machine is so low that not even the run-time system can be fully loaded. Alternatively, your
run-time system has stopped as a result of an internal logic error from which you cannot
recover. -Free some memory and then you should be able to run your program successfully.
Contact Technical Support who will help you to find the cause of the error.
201
I-O error in paging system (Fatal) -No room is available in your current directory or on the
floppy disk which you are using, for the paging file. -When your program has terminated,
delete any files which you no longer need from your directory to make room for the paging file,
or insert a new floppy disk.
202
Exported functionality error (Fatal) -You have either caused an internal run-time system error
by invalid use of an exported function, or the code produced by a preprocessor in your
COBOL system contains errors. -Ensure that all of your external assembler applications call
and use run-time system functions correctly before you try to run your program again. If you
are using a preprocessor as part of your COBOL system, you should use the software as a
standalone preprocessor to isolate the problem areas.
203
CALL parameter not supplied (Fatal) -The item you are trying to access in the Linkage Section
of the currently executing program has not been initialized. -Recode your program to ensure
that it contains all of the necessary parameters, or check that it is a valid caller.
206
Reading unwritten data from memory (Fatal) -You are trying to read data which has not been
written, from the core file.
207
Machine does not exist (Recoverable) -You have tried to access a machine that is not
connected to your network, or which is not on-line. -Make sure the machine is connected to
the network and is on-line, then try to access it again.
208
Error in multi-user system (Fatal) -This is normally caused by an unexpected error occurring in
the network or file-sharing facilities. A corrupted network message also causes this error to
be returned. -Retry the unsuccessful operation. If the error persists, contact Technical
Support who will help you to find the specific cause of this error.
209
Network communication error (Recoverable) -This is normally given if an incorrect checksum
has been received in a communications packet. -Your program should continue to execute
after you have received this error but results might be undefined.
210
File is closed with lock (Fatal) -You have tried to open a file which you have previously closed
with lock. -Recode your program to avoid opening a file which has previously been closed
with lock.
211
Program not executable by run-time system (Fatal) -You have tried to run a program that is
incompatible with the current version of either your run-time system, your object file or your
COBOL run-time library. For example, your run-time system does not run a program linked
using a different object file format or COBOL run-time library. -If your object file is
incompatible with the current version of either your COBOL run-time library or your run-time
system, you should relink with the current version of your COBOL run-time library.
30
Chapter 5 Codes d'erreur externes
213
Too many locks (Recoverable) -You have either tried to exceed the maximum number of
simultaneous record locks per file you can have, or you have exhausted an operating system
or network resource, for example dynamic memory. -Execute a COMMIT or an UNLOCK
operation on the relevant file and you should then be able to continue to run your program. You
should try not to retain a record lock for longer than is necessary.
214
GO TO has not been ALTERed (Fatal) -You have violated one of the general rules of COBOL
programming. -Close any files which might be open, execute a STOP RUN statement and
then edit your program to avoid such illegal operations.
215
Cannot ANIMATE a program running COMMUNICATIONS (Fatal) -You have tried to animate
a program which makes use of the communications module. This cannot be done as both
Animator and the communications module need full use of the CRT. -You should run your
program without the aid of Animator.
216
Cannot initialize the named communications device (Fatal) -A device driver is probably
missing. -Ensure that all communications drivers are loaded before you try to run
Communications.
217
Incompatible host for native code file (Fatal) -The .gnt file is not valid for the host processor. You must resubmit your program to your COBOL system.
218
Malformed MULTIPLE REEL/UNIT file (Fatal) -Either your file header is not correctly
formatted, or you are not using a MULTIPLE REEL/UNIT file. -You should try to run your
program again using a backup copy of the relevant file.
219
Operating system shared file limit exceeded (Recoverable) -You have tried to exceed your
operating system's limit on the number of shared files that you can have open
simultaneously. As this figure is operating system dependent, you should consult your
Release Notes for details of how many shared files your system permits to be open at any
one time. -Close some of the open shared files you are no longer accessing and retry the file
operation.
220
Attempt to execute more than one SORT or MERGE simultaneously (Fatal) -You have coded
your program in such a way that it is trying to execute more than one SORT or MERGE
operation at the same time. For example, you might have coded a SORT statement in the
input or output procedure of another SORT statement, an operation that is specifically
prohibited under the rules of ANSI COBOL. -You should recode your program to ensure that it
does not execute more than one SORT or MERGE at any one time.
221
SORT/MERGE error: see status keys (Fatal) -You have tried a SORT/MERGE operation
which has been unsuccessful for some reason. You might have had too many files open
when you tried a SORT/MERGE operation, or the file which you are trying to access might be
locked. -The action you should take depends on the situation in which it occurs. Check the
status of each file (USING/ GIVING) defined in the SORT statement.
222
SORT/MERGE error: see status keys (Fatal) -You have tried a SORT/MERGE operation
which has been unsuccessful for some reason. You might have had too many files open
when you tried a SORT/MERGE operation, or the file which you are trying to access might be
locked. -The action you should take depends on the situation in which it occurs. Check the
status of each file (USING/ GIVING) defined in the SORT statement.
223
SORT/MERGE error: see status keys (Fatal) -You have tried a SORT/MERGE operation
which has been unsuccessful for some reason. You might have had too many files open
when you tried a SORT/MERGE operation, or the file which you are trying to access might be
locked. Alternatively, you have set the TMP environment variable to point to a directory that
does not exist. -The action you should take depends on the situation in which it occurs. Either
set TMP to point to a directory that does exist, or unset TMP.
224
External Language Initialization failure
Automation Engine
31
225
Dynamic load error - program component missing (Fatal) -The run-time system cannot locate
the root or overlay of a program that is currently loaded in memory. Alternatively, you have
insufficient memory to load your program. Alternatively, the run-time system could not find
enough file handles to open and, therefore, load the code. -Either the library that contained the
program has been canceled, or the program is no longer available on the program search path.
Ensure that the program is available either on disk or on an open library. Either free some
memory, use XM, or restructure your application so that it uses less memory. Increase your
operating system file handles limit.
226
EXTERNAL file definition inconsistent -Two or more programs define the same external file
but with different formats. For example, maximum and minimum record lengths might be
different. -Make sure that all of your programs define the external file with the same format so
that they are consistent. It is useful to have the file definition in a COPY file.
227
EXTERNAL data definition inconsistent (Fatal) -Two or more programs are defining the same
external data item, but the first loaded program has defined the size differently from the
second or subsequent loaded program. -Make sure that both or all of your programs define the
size of the external data item as being the same.
228
Could not allocate memory for EXTERNAL item (Fatal)
229
SORT/MERGE module does not support EXTERNAL using/giving files (Recoverable) -You
have tried a SORT or MERGE operation which has USING/ GIVING files which are defined
as EXTERNAL. The SORT/ MERGE module does not support USING/ GIVING files defined
as EXTERNAL. -Recompile your program to use the callable SORT module (EXTSM).
230
Floating Point Support Module not found (Fatal)
235
Error in animator communications channel (Fatal) -Animator has encountered system limits or
conflicts resulting in communications errors. Perhaps two logins on the same UNIX system
are trying to cross-session animate the same program file. -Copy the animated program file to
a different directory and try animation.
236
Animated program has terminated unexpectedly (Fatal) -A program you are animating has
terminated without following the standard run-time system shut-down process. The
termination was probably either initiated by the user or caused by a severe run-time error. Run your program without animation to determine if it runs successfully; if so, animate the
program without cross-session or intrasession animation.
237
Unable to initialize animated process (Fatal) -Animator has encountered system limits in
starting your program. The animated program cannot start because of either insufficient
memory or too many processes running on the UNIX system. -Animate your program when
the load on the system has reduced. Run the program without animation to determine if it runs
successfully; if so, animate the program without cross-session or intrasession animation.
Ask your system administrator to expand the number of process slots and virtual memory
page maps.
238
STOP RUN encountered during GNT animation (Informational) -Animator has encountered a
STOP RUN statement while animating your .gnt code program. -Step or Zoom the animated
program, and Animator will terminate the program and its current session.
239
Shared run-time system initialization failure (Informational) -You are calling a COBOL module
from a non-COBOL program, and have not initialized the shared run-time system. -Ensure
that your application calls the cobinit() function before executing any COBOL modules.
240
Object reference not valid (Fatal) -You have tried to use an object reference that contains an
incorrect or non-existent object handle. -Ensure that the object reference uses the correct
object handle, and that your program has not previously destroyed the object by sending it a
Finalize message.
32
Chapter 5 Codes d'erreur externes
241
Cannot instantiate an abstract class (Fatal) -You have tried to create an instance of a class
that has been declared ABSTRACT. Such classes cannot be instantiated. -Ensure that you
have specified the correct class name. Check to see if there is a subclass that you should
use instead.
242
Could not resolve DoesNotUnderstand message (Fatal) -The run-time system could not
resolve the DoesNotUnderstand message. This is usually because you have defined a class
in such a way that this method cannot be found. -Check the logic in your program to ensure
that it invokes only methods that are supported by the object, or ensure that the object
supports the DoesNotUnderstand method.
243
Class could not be loaded (Fatal) -An attempt to load an object class has failed because the
class does not contain a valid Class-Control section, or because the class is not defined
correctly. -Check the definition of the class.
254
Keyboard interrupt to ANIMATOR during ACCEPT (Fatal) -While using Animator you have
terminated your program with a keyboard interrupt.
5.3 Messages d'erreur de la pile TCP/IP
La suite est une liste de codes d'erreurs possible retournée par la fonction WSAGetLastError
accompagnés de leurs explications. Les numéros d'erreurs sont constamment répartis entre toutes les
exécutions Windows Sockets conformes.
Code Windows Sockets
Equivalent Berkeley
Erreur
Interprétation
WSAEINTR
EINTR
10004
Comme dans la norme C
WSAEBADF
EBADF
10009
Comme dans la norme C
WSAEACCES
EACCES
10013
Comme dans la norme C
WSAEDISCON
Aucun
10101
Le message s'est terminé sans
problème. Uniquement utilisé pour
les protocoles de messages.
WSAEFAULT
EFAULT
10014
Comme dans la norme C
WSAEINVAL
EINVAL
10022
Comme dans la norme C
WSAEMFILE
EMFILE
10024
Comme dans la norme C
WSAEWOULDBLOCK
EWOULDBLOCK
10035
Comme dans BSD
WSAEINPROGRESS
EINPROGRESS
10036
Ce message d'erreur apparait si
une des fonctions Windows
Sockets est appelée alors qu'une
fonction de blocage s'effectue.
WSAEALREADY
EALREADY
10037
Comme dans BSD
WSAENOTSOCK
ENOTSOCK
10038
Comme dans BSD
WSAEDESTADDRREQ
EDESTADDRREQ
10039
Comme dans BSD
WSAEMSGSIZE
EMSGSIZE
10040
Comme dans BSD
WSAEPROTOTYPE
EPROTOTYPE
10041
Comme dans BSD
WSAENOPROTOOPT
ENOPROTOOPT
10042
Comme dans BSD
WSAEPROTONOSUPPORT EPROTONOSUPPORT 10043
Comme dans BSD
Automation Engine
33
WSAESOCKTNOSUPPORT ESOCKTNOSUPPORT 10044
Comme dans BSD
WSAEOPNOTSUPP
EOPNOTSUPP
10045
Comme dans BSD
WSAEPFNOSUPPORT
EPFNOSUPPORT
10046
Comme dans BSD
WSAEAFNOSUPPORT
EAFNOSUPPORT
10047
Comme dans BSD
WSAEADDRINUSE
EADDRINUSE
10048
Comme dans BSD
WSAEADDRNOTAVAIL
EADDRNOTAVAIL
10049
Comme dans BSD
WSAENETDOWN
ENETDOWN
10050
Comme dans BSD. Cette erreur
peut survenir à n'importe quel
moment si l'exécution Windows
Sockets détecte une erreur sousjacente.
WSAENETUNREACH
ENETUNREACH
10051
Comme dans BSD
WSAENETRESET
ENETRESET
10052
Comme dans BSD
WSAECONNABORTED
ECONNABORTED
10053
Comme dans BSD
WSAECONNRESET
ECONNRESET
10054
Comme dans BSD
WSAENOBUFS
ENOBUFS
10055
Comme dans BSD
WSAEISCONN
EISCONN
10056
Comme dans BSD
WSAENOTCONN
ENOTCONN
10057
Comme dans BSD
WSAESHUTDOWN
ESHUTDOWN
10058
Comme dans BSD
WSAETOOMANYREFS
ETOOMANYREFS
10059
Comme dans BSD
WSAETIMEDOUT
ETIMEDOUT
10060
Comme dans BSD
WSAECONNREFUSED
ECONNREFUSED
10061
Comme dans BSD
WSAELOOP
ELOOP
10062
Comme dans BSD
WSAENAMETOOLONG
ENAMETOOLONG
10063
Comme dans BSD
WSAEHOSTDOWN
EHOSTDOWN
10064
Comme dans BSD
WSAEHOSTUNREACH
EHOSTUNREACH
10065
Comme dans BSD
WSASYSNOTREADY
Aucun
10091
Retourné par WSAStartup,
indiquant que le sous-système
réseau n'est pas utilisable.
WSAVERNOTSUPPORTED
Aucun
10092
Retourné par WSAStartup,
indiquant que les Windows
Sockets DLL ne peuvent pas
prendre en charge cette
application.
WSANOTINITIALISED
Aucun
10093
Retourné par toutes les fonctions
sauf WSAStartup indiquant qu'un
démarrage réussi n'a pas encore
eu lieu.
WSAHOST_NOT_FOUND
HOST_NOT_FOUND
11001
Comme dans BSD
WSATRY_AGAIN
TRY_AGAIN
11002
Comme dans BSD
WSANO_RECOVERY
NO_RECOVERY
11003
Comme dans BSD
WSANO_DATA
NO_DATA
11004
Comme dans BSD
34
Chapter 5 Codes d'erreur externes
La première série de définitions est présente afin de résoudre les conflits entre les codes erreurs de la
norme C qui pourraient être définis de manière incohérente entre les différents compilateurs C.
la deuxième série de définitions fournit des versions Windows Sockets pour des codes erreurs normaux
Berkeley Sockets.
La troisième série de définitions consiste en des codes erreurs étendus spécifiques de Windows Sockets.
La quatrième série d'erreurs est retournée par les fonctions getXbyY et WSAAsyncGetXByY de
Windows Sockets et correspond aux erreurs qui seraient retournées dans la Variable h_errno au sein du
logiciel Berkeley. Elles correspondent à diverses erreurs qui peuvent être retournées par le Domain Name
Service (DNS). Si l'implémentation Windows Sockets n'utilise pas le DNS, elle utilise le code le plus
approprié. En général, une application Windows Sockets devrait interpréter WSAHOST_NOT_FOUND et
WSANO_DATA comme indiqué que la Clef (nom, adresse, etc.) n'a pas été trouvée alors que WSATRY_
AGAIN et WSANO_RECOVERY suggèrent que le nom du service lui-même n'est pas opérationnel.
Les nombres d'erreurs proviennent du fichier d'entête WINSOCK.H et sont basés sur le fait que les
nombres d'erreurs Windows Sockets sont calculés en ajoutant 10 000 au nombre "normal" d'erreurs
Berkeley.
Veuillez remarquer que ce tableau n'inclut pas tous les codes erreur définis dans WINSOCK.H. La raison
de cela est qu'il ne comprend que les erreurs qui peuvent être rationnellement renvoyées par une
implémentation Windows Sockets. D'un autre côté, WINSOCK.H comprend une liste complète de
définitions BSD afin d'assurer la compatibilité avec les logiciels portés.
5.4 Codes d'erreur UNIX
5.4.1 Codes d'erreur dans les messages du log de l'Agent
Thème
Sun OS (Solaris)
Codes d'erreur Sparc, Solaris 1 version 4,1 et supérieure
Codes d'erreur Sparc, Solaris 2 version 5,5 et supérieure
Codes d'erreur Intel, Solaris version 2.4 et supérieure (correspond à SVR4)
HP-UX
Codes d'erreur HP-Workstation (9000), HP-UX 9
Codes d'erreur HP-Workstation (9000), HP-UX 10
DEC OSF
Codes d'erreur Alpha - DEC-OSF/1 - Digital UNIX 4.0
SCO
Codes d'erreur Intel, SCO-UNIX ODT 5.*
IBM AIX
Codes d'erreur Power-PC - AIX 4.1
Automation Engine
35
Remarques
Les codes d'erreur des différents systèmes UNIX sont utilisés dans les messages du log de l'Agent.
Exemple : "Erreur U2003040 dans programme 'read' (58), socket '6', code d'erreur : ('11' - No more
processes)"
Ce message de log signifie que le code d'erreur 11 est survenu sur le socket 6 (numéro interne) lors de la
fonction "read" (lecture de TCP/IP). Le programme a été répété 58 fois, jusqu'à ce que la fonction ait pu
être terminée sans erreur. Ces messages ne sont généralement pas importants et ne nécessitent pas
d'être respectés.
Nous mettons ici à votre disposition tous les codes et textes d'erreur. Pour de plus amples informations,
vous pouvez appeler la documentation relative à une fonction dans le système UNIX à l'aide de la
fonctionman. Cette dernière contient également la description des codes d'erreur possibles.
Exemple : man read
5.4.2 DEC OSF
Codes d'erreur Alpha - DEC-OSF/1 - Digital UNIX 4.0
Code d'erreur Texte d'erreur
0
Successful
1
Not owner
2
No such file or directory
3
No such process
4
Interrupted system call
5
I/O error
6
No such device or address
7
Arg list too long
8
Exec format error
9
Bad file number
10
No children
11
Operation would cause deadlock
12
Not enough core
13
Permission denied
14
Bad address
15
Block device required
16
Mount device busy
17
File exists
18
Cross-device link
19
No such device
20
Not a directory
21
Is a directory
22
Invalid argument
23
File table overflow
36
Chapter 5 Codes d'erreur externes
24
Too many open files
25
Not a typewriter
26
Text file busy
27
File too large
28
No space left on device
29
Illegal seek
30
Read-only file system
31
Too many links
32
Broken pipe
33
Argument too large
34
Result too large
35
Operation would block
36
Operation now in progress
37
Operation already in progress
38
Socket operation on non-socket
39
Destination address required
40
Message too long
41
Protocol wrong type for socket
42
Protocol not available
43
Protocol not supported
44
Socket type not supported
45
Operation not supported on socket
46
Protocol family not supported
47
Address family not supported by protocol family
48
Address already in use
49
Can't assign requested address
50
Network is down
51
Network is unreachable
52
Network dropped connection on reset
53
Software caused connection abort
54
Connection reset by peer
55
No buffer space available
56
Socket is already connected
57
Socket is not connected
58
Can't send after socket shutdown
59
Too many references: can't splice
60
Connection timed out
61
Connection refused
Automation Engine
62
Too many levels of symbolic links
63
File name too long
64
Host is down
65
No route to host
66
Directory not empty
67
Too many processes
68
Too many users
69
Disc quota exceeded
70
Stale NFS file handle
71
Too many levels of remote in path
72
RPC struct is bad
73
RPC version wrong
74
RPC prog. not avail
75
Program version wrong
76
Bad procedure for program
77
No locks available
78
Function not implemented
79
Inappropriate file type or format
80
No msg matches receive request
81
Msg queue id has been removed
82
Out of STREAMS resources
83
System call timed out
84
Next message has wrong type
85
STREAMS protocol error
86
No message on stream head read q
87
fd not associated with a stream
88
Tells open to clone the device
89
Mounting a dirty fs w/o force
90
duplicate package name on install
91
version number mismatch
92
unresolved package name
93
unresolved symbol name
94
operation canceled
95
cannot start operation
97
operation (now) in progress
98
too many timers
99
function not implemented
100
internal AIO operation complete
37
38
Chapter 5 Codes d'erreur externes
101
Reserved
102
Reserved
103
Value too large to be stored in data type
116
Invalid wide character
5.4.3 HP-UX
Codes d'erreur HP-Workstation (9000), HP-UX 9
Code d'erreur Texte d'erreur
1
Not super-user
2
No such file or directory
3
No such process
4
interrupted system call
5
I/O error
6
No such device or address
7
Arg list too long
8
Exec format error
9
Bad file number
10
No children
11
No more processes
12
Not enough core
13
Permission denied
14
Bad address
15
Block device required
16
Mount device busy
17
File exists
18
Cross-device link
19
No such device
20
Not a directory
21
Is a directory
22
Invalid argument
23
File table overflow
24
Too many open files
25
Not a typewriter
26
Text file busy
27
File too large
28
No space left on device
29
Illegal seek
Automation Engine
30
Read only file system
31
Too many links
32
Broken pipe
35
No message of desired type
36
Identifier removed
37
Channel number out of range
38
Level 2 not synchronized
39
Level 3 halted
40
Level 3 reset
41
Link number out of range
42
Protocol driver not attached
43
No CSI structure available
44
Level 2 halted
45
A deadlock would occur
46
System record lock table was full
47
Illegal byte sequence
50
Machine is not on the network
51
no data (for no delay io)
52
timer expired
53
out of streams resources
54
Device not a stream
55
Package not installed
57
the link has been severed
58
advertise error
59
srmount error
60
Communication error on send
61
Protocol error
64
multihop attempted
66
Cross mount point (not really error)
67
trying to read unreadable message
68
For Sun compatibilty, will not occur.
69
Disc quota exceeded
70
Stale NFS file handle
71
Too many levels of remote in path
99
Unexpected Error
215
symbol does not exist in executable
216
Socket operation on non-socket
217
Destination address required
39
40
Chapter 5 Codes d'erreur externes
218
Message too long
219
Protocol wrong type for socket
220
Protocol not available
221
Protocol not supported
222
Socket type not supported
223
Operation not supported
224
Protocol family not supported
225
Address family not supported by
226
Address already in use
227
Can't assign requested address
228
Network is down
229
Network is unreachable
230
Network dropped connection on
231
Software caused connection abort
232
Connection reset by peer
233
No buffer space available
234
Socket is already connected
235
Socket is not connected
236
Can't send after socket shutdown
237
Too many references: can't splice
238
Connection timed out
239
Connection refused
240
Remote peer released connection
241
Host is down
242
No route to host
244
Operation already in progress
245
Operation now in progress
246
Operation would block
247
Directory not empty
248
File name too long
249
Too many levels of symbolic links
250
No message of desired type
251
Function not implemented
Codes d'erreur HP-Workstation (9000), HP-UX 10
Code d'erreur Texte d'erreur
1
Not super-user
2
No such file or directory
Automation Engine
3
No such process
4
interrupted system call
5
I/O error
6
No such device or address
7
Arg list too long
8
Exec format error
9
Bad file number
10
No children
11
No more processes
12
Not enough core
13
Permission denied
14
Bad address
15
Block device required
16
Mount device busy
17
File exists
18
Cross-device link
19
No such device
20
Not a directory
21
Is a directory
22
Invalid argument
23
File table overflow
24
Too many open files
25
Not a typewriter
26
Text file busy
27
File too large
28
No space left on device
29
Illegal seek
30
Read only file system
31
Too many links
32
Broken pipe
33
Math arg out of domain of func
34
Math result not representable
35
No message of desired type
36
Identifier removed
37
Channel number out of range
38
Level 2 not synchronized
39
Level 3 halted
40
Level 3 reset
41
42
Chapter 5 Codes d'erreur externes
41
Link number out of range
42
Protocol driver not attached
43
No CSI structure available
44
Level 2 halted
45
A deadlock would occur
46
System record lock table was full
47
Illegal byte sequence
50
Machine is not on the network
51
no data (for no delay io)
52
timer expired
53
out of streams resources
54
Device not a stream
55
Package not installed
57
the link has been severed
58
advertise error
59
srmount error
60
Communication error on send
61
Protocol error
64
multihop attempted
66
Cross mount point (not really error)
67
trying to read unreadable message
68
For Sun compatibilty, will not occur.
69
Disc quota exceeded
70
Stale NFS file handle
71
Too many levels of remote in path
72
Value too large to be stored in data type
215
symbol does not exist in executable
216
Socket operation on non-socket
217
Destination address required
218
Message too long
219
Protocol wrong type for socket
220
Protocol not available
221
Protocol not supported
222
Socket type not supported
223
Operation not supported
224
Protocol family not supported
225
Address family not supported by
226
Address already in use
Automation Engine
227
Can't assign requested address
228
Network is down
229
Network is unreachable
230
Network dropped connection on reset
231
Software caused connection abort
232
Connection reset by peer
233
No buffer space available
234
Socket is already connected
235
Socket is not connected
236
Can't send after socket shutdown
237
Too many references: can't splice
238
Connection timed out
239
Connection refused
240
Remote peer released connection
241
Host is down
242
No route to host
244
Operation already in progress
245
Operation now in progress
246
Operation would block
247
Directory not empty
248
File name too long
249
Too many levels of symbolic links
251
Function not implemented
252
Function not implemented
5.4.4 IBM AIX
Codes d'erreur Power-PC - AIX 4.1
Code d'erreur Texte d'erreur
1
Operation not permitted
2
No such file or directory
3
No such process
4
interrupted system call
5
I/O error
6
No such device or address
7
Arg list too long
8
Exec format error
9
Bad file descriptor
43
44
Chapter 5 Codes d'erreur externes
10
No child processes
11
Resource temporarily unavailable
12
Not enough space
13
Permission denied
14
Bad address
15
Block device required
16
Resource busy
17
File exists
18
Improper link
19
No such device
20
Not a directory
21
Is a directory
22
Invalid argument
23
Too many open files in system
24
Too many open files
25
Inappropriate I/O control operation
26
Text file busy
27
File too large
28
No space left on device
29
Invalid seek
30
Read only file system
31
Too many links
32
Broken pipe
33
Domain error within math function
34
Result too large
35
No message of desired type
36
Identifier removed
37
Channel number out of range
38
Level 2 not synchronized
39
Level 3 halted
40
Level 3 reset
41
Link number out of range
42
Protocol driver not attached
43
No CSI structure available
44
Level 2 halted
45
Resource deadlock avoided
46
Device not ready
47
Write-protected media
Automation Engine
48
Unformatted media
49
No locks available
50
no connection
52
no filesystem
53
old, currently unused AIX errno
54
Operation would block
55
Operation now in progress
56
Operation already in progress
57
Socket operation on non-socket
58
Destination address required
59
Message too long
60
Protocol wrong type for socket
61
Protocol not available
62
Protocol not supported
63
Socket type not supported
64
Operation not supported on socket
65
Protocol family not supported
66
Address family not supported by protocol family
67
Address already in use
68
Can't assign requested address
69
Network is down
70
Network is unreachable
71
Network dropped connection on reset
72
Software caused connection abort
73
Connection reset by peer
74
No buffer space available
75
Socket is already connected
76
Socket is not connected
77
Can't send after socket shutdown
78
Connection timed out
79
Connection refused
80
Host is down
81
No route to host
82
restart the system call
83
Too many processes
84
Too many users
85
Too many levels of symbolic links
86
File name too long
45
46
Chapter 5 Codes d'erreur externes
87
Directory not empty
88
Disc quota exceeded
89 - 92
reserved for future use compatible with AIX PS/2
93
Item is not local to host
94 - 108
reserved for future use compatible with AIX PS/2
109
Function not implemented POSIX
110
media surface error
111
I/O completed, but needs relocation
112
no attribute found
113
security authentication denied
114
not a trusted program
115
Too many references: can't splice
116
Invalid wide character
117
asynchronous i/o cancelled
118
temp out of streams resources
119
I_STR ioctl timed out
120
wrong message type at stream head
121
STREAMS protocol error
122
no message ready at stream head
123
fd is not a stream
124
POSIX threads unsupported value
125
multihop is not allowed
126
the link has been severed
127
value too large to be stored in data type
5.4.5 SCO
Codes d'erreur Intel, SCO-UNIX ODT 5.*
Code d'erreur Texte d'erreur
1
Not owner
2
No such file or directory
3
No such process
4
Interrupted system call
5
I/O error
6
No such device or address
7
Arg list too long
8
Exec format error
9
Bad file number
Automation Engine
10
No child processes
11
No more processes
12
Not enough space
13
Permission denied
14
Bad address
15
Block device required
16
Device busy
17
File exists
18
Cross-device link
19
No such device
20
Not a directory
21
Is a directory
22
Invalid argument
23
File table overflow
24
Too many open files
25
Not a typewriter
26
Text file busy
27
File too large
28
No space left on device
29
Illegal seek
30
Read-only file system
31
Too many links
32
Broken pipe
33
Argument out of domain
34
Result too large
35
No message of desired type
36
Identifier removed
37
Channel number out of range
38
Level 2 not synchronized
39
Level 3 halted
40
Level 3 reset
41
Link number out of range
42
Protocol driver not attached
43
No CSI structure available
44
Level 2 halted
45
Deadlock situation detected/avoided
46
No record locks available
50
Bad exchange descriptor
47
48
Chapter 5 Codes d'erreur externes
51
Bad request descriptor
52
Message tables full
53
Anode table overflow
54
Bad request code
55
Invalid slot
56
File locking deadlock
57
Bad font file format
60
Not a stream device
61
No data available
62
Timer expired
63
Out of stream resources
64
Machine is not on the network
65
Package not installed
66
Object is remote
67
Link has been severed
68
Advertise error
69
Srmount error
70
Communication error on send
71
Protocol error
74
Multihop attempted
75
Inode is remote (not really error)
76
Cross mount point (not really error)
77
Not a data message
78
Filename too long
79
(Reserved for future use)
80
Name not unique on network
81
File descriptor in bad state
82
Remote address changed
83
Can not access a needed shared library
84
Accessing a corrupted shared library
85
.lib section in a.out corrupted
86
Attempting to link in too many shared libs.
87
Can not exec a shared library directly
88
Illegal byte sequence
89
Function not implemented
90
Operation would block
91
Operation now in progress
92
Operation already in progress
Automation Engine
93
Socket operation on non-socket
94
Destination address required
95
Message too long
96
Protocol wrong type for socket
97
Protocol not supported
98
Socket type not supported
99
Operation not supported on socket
100
Protocol family not supported
101
Address family not supported by protocol family
102
Address already in use
103
Can't assign requested address
104
Network is down
105
Network is unreachable
106
Network dropped connection on reset
107
Software caused connection abort
108
Connection reset by peer
110
Socket is already connected
111
Socket is not connected
112
Can't send after socket shutdown
113
Too many references: can't splice
114
Connection timed out
115
Connection refused
116
Host is down
117
No route to host
118
Protocol not available
135
Structure needs cleaning
137
Not a name file
138
Not available
139
Is a name file
140
Remote I/O error
141
(Reserved for future use)
142
Error 142
145
Directory not empty
150
Too many symbolic links in path
151
(Reserved for future use)
152
(Reserved for future use)
153
(Reserved for future use)
500
(Reserved for future use)
49
50
Chapter 5 Codes d'erreur externes
5.4.6 Sun OS (Solaris)
Codes d'erreur Sparc, Solaris 1 version 4,1 et supérieure
Code d'erreur Texte d'erreur
1
Not owner
2
No such file or directory
3
No such process
4
Interrupted system call
5
I/O error
6
No such device or address
7
Arg list too long
8
Exec format error
9
Bad file number
10
No children
11
No more processes
12
Not enough core
13
Permission denied
14
Bad address
15
Block device required
16
Mount device busy
17
File exists
18
Cross-device link
19
No such device
20
Not a directory
21
Is a directory
22
Invalid argument
23
File table overflow
24
Too many open files
25
Not a typewriter
26
Text file busy
27
File too large
28
No space left on device
29
Illegal seek
30
Read-only file system
31
Too many links
32
Broken pipe
33
Argument too large
34
Result too large
Automation Engine
35
Operation would block
36
Operation now in progress
37
Operation already in progress
38
Socket operation on non-socket
39
Destination address required
40
Message too long
41
Protocol wrong type for socket
42
Protocol not available
43
Protocol not supported
44
Socket type not supported
45
Operation not supported on socket
46
Protocol family not supported
47
Address family not supported by protocol family
48
Address already in use
49
Can't assign requested address
50
Network is down
51
Network is unreachable
52
Network dropped connection on reset
53
Software caused connection abort
54
Connection reset by peer
55
No buffer space available
56
Socket is already connected
57
Socket is not connected
58
Can't send after socket shutdown
59
Too many references: can't splice
60
Connection timed out
61
Connection refused
62
Too many levels of symbolic links
63
File name too long
64
Host is down
65
No route to host
66
Directory not empty
67
Too many processes
68
Too many users
69
Disc quota exceeded
70
Stale NFS file handle
71
Too many levels of remote in path
72
Device is not a stream
51
52
Chapter 5 Codes d'erreur externes
73
Timer expired
74
Out of streams resources
75
No message of desired type
76
Trying to read unreadable message
77
Identifier removed
78
Deadlock condition.
79
No record locks available
80
Machine is not on the network
81
Object is remote
82
the link has been severed
83
advertise error
84
srmount error
85
Communication error on send
86
Protocol error
87
multihop attempted
88
Cross mount point (not an error)
89
Remote address changed
90
function not implemented
Codes d'erreur Sparc, Solaris 2 version 5,5 et supérieure
Code d'erreur Texte d'erreur
1
Not super-user
2
No such file or directory
3
No such process
4
interrupted system call
5
I/O error
6
No such device or address
7
Arg list too long
8
Exec format error
9
Bad file number
10
No children
11
Resource temporarily unavailable
12
Not enough core
13
Permission denied
14
Bad address
15
Block device required
16
Mount device busy
17
File exists
Automation Engine
18
Cross-device link
19
No such device
20
Not a directory
21
Is a directory
22
Invalid argument
23
File table overflow
24
Too many open files
25
Inappropriate ioctl for device
26
Text file busy
27
File too large
28
No space left on device
29
Illegal seek
30
Read only file system
31
Too many links
32
Broken pipe
33
Math arg out of domain of func
34
Math result not representable
35
No message of desired type
36
Identifier removed
37
Channel number out of range
38
Level 2 not synchronized
39
Level 3 halted
40
Level 3 reset
41
Link number out of range
42
Protocol driver not attached
43
No CSI structure available
44
Level 2 halted
45
Deadlock condition.
46
No record locks available
47
Operation canceled
48
Operation not supported
49
Disc quota exceeded
50
invalid exchange
51
invalid request descriptor
52
exchange full
53
no anode
54
invalid request code
55
invalid slot
53
54
Chapter 5 Codes d'erreur externes
56
file locking deadlock error
57
bad font file fmt
60
Device not a stream
61
no data (for no delay io)
62
timer expired
63
out of streams resources
64
Machine is not on the network
65
Package not installed
66
The object is remote
67
the link has been severed
68
advertise error
69
srmount error
70
Communication error on send
71
Protocol error
74
multihop attempted
77
trying to read unreadable message
78
path name is too long
79
value too large to be stored in data type
80
given log. name not unique
81
f.d. invalid for this operation
82
Remote address changed
83
Can't access a needed shared lib.
84
Accessing a corrupted shared lib.
85
.lib section in a.out corrupted.
86
Attempting to link in too many libs.
87
Attempting to exec a shared library.
88
Illegal byte sequence.
89
Unsupported file system operation
90
Symbolic link loop
91
Restartable system call
92
if pipe/FIFO, don't sleep in stream head
93
directory not empty
94
Too many users (for UFS)
95
Socket operation on non-socket
96
Destination address required
97
Message too long
98
Protocol wrong type for socket
99
Protocol not available
Automation Engine
120
Protocol not supported
121
Socket type not supported
122
Operation not supported on socket
123
Protocol family not supported
124
Address family not supported by
125
Address already in use
126
Can't assign requested address
127
Network is down
128
Network is unreachable
129
Network dropped connection because
130
Software caused connection abort
131
Connection reset by peer
132
No buffer space available
133
Socket is already connected
134
Socket is not connected
135 - 142
XENIX
143
Can't send after socket shutdown
144
Too many references: can't splice
145
Connection timed out
146
Connection refused
147
Host is down
148
No route to host
149
operation already in progress
150
operation now in progress
151
Stale NFS file handle
Codes d'erreur Intel, Solaris version 2.4 et supérieure
Code d'erreur Texte d'erreur
1
Not super-user
2
No such file or directory
3
No such process
4
interrupted system call
5
I/O error
6
No such device or address
7
Arg list too long
8
Exec format error
9
Bad file number
10
No children
55
56
Chapter 5 Codes d'erreur externes
11
Resource temporarily unavailable
12
Not enough core
13
Permission denied
14
Bad address
15
Block device required
16
Mount device busy
17
File exists
18
Cross-device link
19
No such device
20
Not a directory
21
Is a directory
22
Invalid argument
23
File table overflow
24
Too many open files
25
Inappropriate ioctl for device
26
Text file busy
27
File too large
28
No space left on device
29
Illegal seek
30
Read only file system
31
Too many links
32
Broken pipe
33
Math arg out of domain of func
34
Math result not representable
35
No message of desired type
36
Identifier removed
37
Channel number out of range
38
Level 2 not synchronized
39
Level 3 halted
40
Level 3 reset
41
Link number out of range
42
Protocol driver not attached
43
No CSI structure available
44
Level 2 halted
45
Deadlock condition.
46
No record locks available
47
Operation canceled
48
Operation not supported
Automation Engine
50
invalid exchange
51
invalid request descriptor
52
exchange full
53
no anode
54
invalid request code
55
invalid slot
56
file locking deadlock error
57
bad font file fmt
60
Device not a stream
61
no data (for no delay io)
62
timer expired
63
out of streams resources
64
Machine is not on the network
65
Package not installed
66
The object is remote
67
the link has been severed
68
advertise error
69
srmount error
70
Communication error on send
71
Protocol error
74
multihop attempted
77
trying to read unreadable message
78
path name is too long
79
value too large to be stored in data type
80
given log. name not unique
81
f.d. invalid for this operation
82
Remote address changed
83
Can't access a needed shared lib.
84
Accessing a corrupted shared lib.
85
.lib section in a.out corrupted.
86
Attempting to link in too many libs.
87
Attempting to exec a shared library.
88
Illegal byte sequence.
89
Unsupported file system operation
90
Symbolic link loop
91
Restartable system call
92
if pipe/FIFO, don't sleep in stream head
93
directory not empty
57
58
Chapter 5 Codes d'erreur externes
94
Too many users (for UFS)
95
Socket operation on non-socket
96
Destination address required
97
Message too long
98
Protocol wrong type for socket
99
Protocol not available
120
Protocol not supported
121
Socket type not supported
122
Operation not supported on socket
123
Protocol family not supported
124
Address family not supported by
125
Address already in use
126
Can't assign requested address
127
Network is down
128
Network is unreachable
129
Network dropped connection because of reset
130
Software caused connection abort
131
Connection reset by peer
132
No buffer space available
133
Socket is already connected
134
Socket is not connected
135 - 142
XENIX
143
Can't send after socket shutdown
144
Too many references: can't splice
145
Connection timed out
146
Connection refused
147
Host is down
148
No route to host
149
operation already in progress
150
operation now in progress
5.5 Codes d'erreur Windows
5.5.1 Win32 - Codes d'erreur (0-999)
Le tableau suivant contient les messages d'erreur Win32.
Code Description
Nom
Automation Engine
59
0
The operation completed successfully.
ERROR_
SUCCESS
1
Incorrect function.
ERROR_
INVALID_
FUNCTION
2
The system cannot find the file specified.
ERROR_FILE_
NOT_FOUND
3
The system cannot find the path specified.
ERROR_PATH_
NOT_FOUND
4
The system cannot open the file.
ERROR_TOO_
MANY_OPEN_
FILES
5
Access is denied.
ERROR_
ACCESS_
DENIED
6
The handle is invalid.
ERROR_
INVALID_
HANDLE
7
The storage control blocks were destroyed.
ERROR_ARENA_
TRASHED
8
Not enough storage is available to process this command.
ERROR_NOT_
ENOUGH_
MEMORY
9
The storage control block address is invalid.
ERROR_
INVALID_BLOCK
10
The environment is incorrect.
ERROR_BAD_
ENVIRONMENT
11
An attempt was made to load a program with an incorrect format.
ERROR_BAD_
FORMAT
12
The access code is invalid.
ERROR_
INVALID_
ACCESS
13
The data is invalid.
ERROR_
INVALID_DATA
14
Not enough storage is available to complete this operation.
ERROR_
OUTOFMEMORY
15
The system cannot find the drive specified.
ERROR_
INVALID_DRIVE
16
The directory cannot be removed.
ERROR_
CURRENT_
DIRECTORY
17
The system cannot move the file to a different disk drive.
ERROR_NOT_
SAME_DEVICE
18
There are no more files.
ERROR_NO_
MORE_FILES
60
Chapter 5 Codes d'erreur externes
19
The media is write protected.
ERROR_WRITE_
PROTECT
20
The system cannot find the device specified.
ERROR_BAD_
UNIT
21
The device is not ready.
ERROR_NOT_
READY
22
The device does not recognize the command.
ERROR_BAD_
COMMAND
23
Data error (cyclic redundancy check).
ERROR_CRC
24
The program issued a command but the command length is incorrect.
ERROR_BAD_
LENGTH
25
The drive cannot locate a specific area or track on the disk.
ERROR_SEEK
26
The specified disk or diskette cannot be accessed.
ERROR_NOT_
DOS_DISK
27
The drive cannot find the sector requested.
ERROR_
SECTOR_NOT_
FOUND
28
The printer is out of paper.
ERROR_OUT_
OF_PAPER
29
The system cannot write to the specified device.
ERROR_WRITE_
FAULT
30
The system cannot read from the specified device.
ERROR_READ_
FAULT
31
A device attached to the system is not functioning.
ERROR_GEN_
FAILURE
32
The process cannot access the file because it is being used by another
process.
ERROR_
SHARING_
VIOLATION
33
The process cannot access the file because another process has locked a
portion of the file.
ERROR_LOCK_
VIOLATION
34
The wrong diskette is in the drive. Insert %2 (Volume Serial Number: %3)
into drive %1.
ERROR_
WRONG_DISK
36
Too many files opened for sharing.
ERROR_
SHARING_
BUFFER_
EXCEEDED
38
Reached the end of the file.
ERROR_
HANDLE_EOF
39
The disk is full.
ERROR_
HANDLE_DISK_
FULL
50
The network request is not supported.
ERROR_NOT_
SUPPORTED
51
The remote computer is not available.
ERROR_REM_
NOT_LIST
Automation Engine
61
52
A duplicate name exists on the network.
ERROR_DUP_
NAME
53
The network path was not found.
ERROR_BAD_
NETPATH
54
The network is busy.
ERROR_
NETWORK_BUSY
55
The specified network resource or device is no longer available.
ERROR_DEV_
NOT_EXIST
56
The network BIOS command limit has been reached.
ERROR_TOO_
MANY_CMDS
57
A network adapter hardware error occurred.
ERROR_ADAP_
HDW_ERR
58
The specified server cannot perform the requested operation.
ERROR_BAD_
NET_RESP
59
An unexpected network error occurred.
ERROR_UNEXP_
NET_ERR
60
The remote adapter is not compatible.
ERROR_BAD_
REM_ADAP
61
The printer queue is full.
ERROR_
PRINTQ_FULL
62
Space to store the file waiting to be printed is not available on the server.
ERROR_NO_
SPOOL_SPACE
63
Your file waiting to be printed was deleted.
ERROR_PRINT_
CANCELLED
64
The specified network name is no longer available.
ERROR_
NETNAME_
DELETED
65
Network access is denied.
ERROR_
NETWORK_
ACCESS_
DENIED
66
The network resource type is not correct.
ERROR_BAD_
DEV_TYPE
67
The network name cannot be found.
ERROR_BAD_
NET_NAME
68
The name limit for the local computer network adapter card was exceeded.
ERROR_TOO_
MANY_NAMES
69
The network BIOS session limit was exceeded.
ERROR_TOO_
MANY_SESS
70
The remote server has been paused or is in the process of being started.
ERROR_
SHARING_
PAUSED
71
No more connections can be made to this remote computer at this time
because there are already as many connections as the computer can
accept.
ERROR_REQ_
NOT_ACCEP
62
Chapter 5 Codes d'erreur externes
72
The specified printer or disk device has been paused.
ERROR_REDIR_
PAUSED
80
The file exists.
ERROR_FILE_
EXISTS
82
The directory or file cannot be created.
ERROR_
CANNOT_MAKE
83
Fail on INT 24.
ERROR_FAIL_I24
84
Storage to process this request is not available.
ERROR_OUT_
OF_
STRUCTURES
85
The local device name is already in use.
ERROR_
ALREADY_
ASSIGNED
86
The specified network password is not correct.
ERROR_
INVALID_
PASSWORD
87
The parameter is incorrect.
ERROR_
INVALID_
PARAMETER
88
A write fault occurred on the network.
ERROR_NET_
WRITE_FAULT
89
The system cannot start another process at this time.
ERROR_NO_
PROC_SLOTS
100
Cannot create another system semaphore.
ERROR_TOO_
MANY_
SEMAPHORES
101
The exclusive semaphore is owned by another process.
ERROR_EXCL_
SEM_ALREADY_
OWNED
102
The semaphore is set and cannot be closed.
ERROR_SEM_IS_
SET
103
The semaphore cannot be set again.
ERROR_TOO_
MANY_SEM_
REQUESTS
104
Cannot request exclusive semaphores at interrupt time.
ERROR_
INVALID_AT_
INTERRUPT_
TIME
105
The previous ownership of this semaphore has ended.
ERROR_SEM_
OWNER_DIED
106
Insert the diskette for drive %1.
ERROR_SEM_
USER_LIMIT
107
The program stopped because an alternate diskette was not inserted.
ERROR_DISK_
CHANGE
108
The disk is in use or locked by another process.
ERROR_DRIVE_
LOCKED
Automation Engine
63
109
The pipe has been ended.
ERROR_
BROKEN_PIPE
110
The system cannot open the device or file specified.
ERROR_OPEN_
FAILED
111
The file name is too long.
ERROR_
BUFFER_
OVERFLOW
112
There is not enough space on the disk.
ERROR_DISK_
FULL
113
No more internal file identifiers available.
ERROR_NO_
MORE_SEARCH_
HANDLES
114
The target internal file identifier is incorrect.
ERROR_
INVALID_
TARGET_
HANDLE
117
The IOCTL call made by the application program is not correct.
ERROR_
INVALID_
CATEGORY
118
The verify-on-write switch parameter value is not correct.
ERROR_
INVALID_
VERIFY_SWITCH
119
The system does not support the command requested.
ERROR_BAD_
DRIVER_LEVEL
120
This function is not supported on this system.
ERROR_CALL_
NOT_
IMPLEMENTED
121
The semaphore timeout period has expired.
ERROR_SEM_
TIMEOUT
122
The data area passed to a system call is too small.
ERROR_
INSUFFICIENT_
BUFFER
123
The filename, directory name, or volume label syntax is incorrect.
ERROR_
INVALID_NAME
124
The system call level is not correct.
ERROR_
INVALID_LEVEL
125
The disk has no volume label.
ERROR_NO_
VOLUME_LABEL
126
The specified module could not be found.
ERROR_MOD_
NOT_FOUND
127
The specified procedure could not be found.
ERROR_PROC_
NOT_FOUND
128
There are no child processes to wait for.
ERROR_WAIT_
NO_CHILDREN
129
The %1 application cannot be run in Win32 mode.
ERROR_CHILD_
NOT_COMPLETE
64
Chapter 5 Codes d'erreur externes
130
Attempt to use a file handle to an open disk partition for an operation other
than raw disk I/O.
ERROR_
DIRECT_
ACCESS_
HANDLE
131
An attempt was made to move the file pointer before the beginning of the
file.
ERROR_
NEGATIVE_SEEK
132
The file pointer cannot be set on the specified device or file.
ERROR_SEEK_
ON_DEVICE
133
A JOIN or SUBST command cannot be used for a drive that contains
previously joined drives.
ERROR_IS_
JOIN_TARGET
134
An attempt was made to use a JOIN or SUBST command on a drive that
has already been joined.
ERROR_IS_
JOINED
135
An attempt was made to use a JOIN or SUBST command on a drive that
has already been substituted.
ERROR_IS_
SUBSTED
136
The system tried to delete the JOIN of a drive that is not joined.
ERROR_NOT_
JOINED
137
The system tried to delete the substitution of a drive that is not substituted. ERROR_NOT_
SUBSTED
138
The system tried to join a drive to a directory on a joined drive.
ERROR_JOIN_
TO_JOIN
139
The system tried to substitute a drive to a directory on a substituted drive.
ERROR_SUBST_
TO_SUBST
140
The system tried to join a drive to a directory on a substituted drive.
ERROR_JOIN_
TO_SUBST
141
The system tried to SUBST a drive to a directory on a joined drive.
ERROR_SUBST_
TO_JOIN
142
The system cannot perform a JOIN or SUBST at this time.
ERROR_BUSY_
DRIVE
143
The system cannot join or substitute a drive to or for a directory on the
same drive.
ERROR_SAME_
DRIVE
144
The directory is not a subdirectory of the root directory.
ERROR_DIR_
NOT_ROOT
145
The directory is not empty.
ERROR_DIR_
NOT_EMPTY
146
The path specified is being used in a substitute.
ERROR_IS_
SUBST_PATH
147
Not enough resources are available to process this command.
ERROR_IS_
JOIN_PATH
148
The path specified cannot be used at this time.
ERROR_PATH_
BUSY
149
An attempt was made to join or substitute a drive for which a directory on
the drive is the target of a previous substitute.
ERROR_IS_
SUBST_TARGET
150
System trace information was not specified in your CONFIG.SYS file, or
tracing is disallowed.
ERROR_
SYSTEM_TRACE
Automation Engine
65
151
The number of specified semaphore events for DosMuxSemWait is not
correct.
ERROR_
INVALID_EVENT_
COUNT
152
DosMuxSemWait did not execute; too many semaphores are already set.
ERROR_TOO_
MANY_
MUXWAITERS
153
The DosMuxSemWait list is not correct.
ERROR_
INVALID_LIST_
FORMAT
154
The volume label you entered exceeds the label character limit of the target ERROR_LABEL_
file system.
TOO_LONG
155
Cannot create another thread.
ERROR_TOO_
MANY_TCBS
156
The recipient process has refused the signal.
ERROR_SIGNAL_
REFUSED
157
The segment is already discarded and cannot be locked.
ERROR_
DISCARDED
158
The segment is already unlocked.
ERROR_NOT_
LOCKED
159
The address for the thread ID is not correct.
ERROR_BAD_
THREADID_
ADDR
160
The argument string passed to DosExecPgm is not correct.
ERROR_BAD_
ARGUMENTS
161
The specified path is invalid.
ERROR_BAD_
PATHNAME
162
A signal is already pending.
ERROR_SIGNAL_
PENDING
164
No more threads can be created in the system.
ERROR_MAX_
THRDS_
REACHED
167
Unable to lock a region of a file.
ERROR_LOCK_
FAILED
170
The requested resource is in use.
ERROR_BUSY
173
A lock request was not outstanding for the supplied cancel region.
ERROR_
CANCEL_
VIOLATION
174
The file system does not support atomic changes to the lock type.
ERROR_
ATOMIC_LOCKS_
NOT_
SUPPORTED
180
The system detected a segment number that was not correct.
ERROR_
INVALID_
SEGMENT_
NUMBER
66
Chapter 5 Codes d'erreur externes
182
The operating system cannot run %1.
ERROR_
INVALID_
ORDINAL
183
Cannot create a file when that file already exists.
ERROR_
ALREADY_
EXISTS
186
The flag passed is not correct.
ERROR_
INVALID_FLAG_
NUMBER
187
The specified system semaphore name was not found.
ERROR_SEM_
NOT_FOUND
188
The operating system cannot run %1.
ERROR_
INVALID_
STARTING_
CODESEG
189
The operating system cannot run %1.
ERROR_
INVALID_
STACKSEG
190
The operating system cannot run %1.
ERROR_
INVALID_
MODULETYPE
191
Cannot run %1 in Win32 mode.
ERROR_
INVALID_EXE_
SIGNATURE
192
The operating system cannot run %1.
ERROR_EXE_
MARKED_
INVALID
193
%1 is not a valid Win32 application.
ERROR_BAD_
EXE_FORMAT
194
The operating system cannot run %1.
ERROR_
ITERATED_
DATA_
EXCEEDS_64k
195
The operating system cannot run %1.
ERROR_
INVALID_
MINALLOCSIZE
196
The operating system cannot run this application program.
ERROR_
DYNLINK_FROM_
INVALID_RING
197
The operating system is not presently configured to run this application.
ERROR_IOPL_
NOT_ENABLED
198
The operating system cannot run %1.
ERROR_
INVALID_
SEGDPL
199
The operating system cannot run this application program.
ERROR_
AUTODATASEG_
EXCEEDS_64k
Automation Engine
67
200
The code segment cannot be greater than or equal to 64K.
ERROR_
RING2SEG_
MUST_BE_
MOVABLE
201
The operating system cannot run %1.
ERROR_RELOC_
CHAIN_XEEDS_
SEGLIM
202
The operating system cannot run %1.
ERROR_
INFLOOP_IN_
RELOC_CHAIN
203
The system could not find the environment option that was entered.
ERROR_
ENVVAR_NOT_
FOUND
205
No process in the command subtree has a signal handler.
ERROR_NO_
SIGNAL_SENT
206
The filename or extension is too long.
ERROR_
FILENAME_
EXCED_RANGE
207
The ring 2 stack is in use.
ERROR_RING2_
STACK_IN_USE
208
The global filename characters, * or ?, are entered incorrectly or too many
global filename characters are specified.
ERROR_META_
EXPANSION_
TOO_LONG
209
The signal being posted is not correct.
ERROR_
INVALID_
SIGNAL_
NUMBER
210
The signal handler cannot be set.
ERROR_
THREAD_1_
INACTIVE
212
The segment is locked and cannot be reallocated.
ERROR_LOCKED
214
Too many dynamic-link modules are attached to this program or dynamiclink module.
ERROR_TOO_
MANY_MODULES
215
Cannot nest calls to LoadModule.
ERROR_
NESTING_NOT_
ALLOWED
216
The image file %1 is valid, but is for a machine type other than the current
machine.
ERROR_EXE_
MACHINE_TYPE_
MISMATCH
230
The pipe state is invalid.
ERROR_BAD_
PIPE
231
All pipe instances are busy.
ERROR_PIPE_
BUSY
232
The pipe is being closed.
ERROR_NO_
DATA
68
Chapter 5 Codes d'erreur externes
233
No process is on the other end of the pipe.
ERROR_PIPE_
NOT_
CONNECTED
234
More data is available.
ERROR_MORE_
DATA
240
The session was canceled.
ERROR_VC_
DISCONNECTED
254
The specified extended attribute name was invalid.
ERROR_
INVALID_EA_
NAME
255
The extended attributes are inconsistent.
ERROR_EA_
LIST_
INCONSISTENT
258
The wait operation timed out.
WAIT_TIMEOUT
259
No more data is available.
ERROR_NO_
MORE_ITEMS
266
The copy functions cannot be used.
ERROR_
CANNOT_COPY
267
The directory name is invalid.
ERROR_
DIRECTORY
275
The extended attributes did not fit in the buffer.
ERROR_EAS_
DIDNT_FIT
276
The extended attribute file on the mounted file system is corrupt.
ERROR_EA_
FILE_CORRUPT
277
The extended attribute table file is full.
ERROR_EA_
TABLE_FULL
278
The specified extended attribute handle is invalid.
ERROR_
INVALID_EA_
HANDLE
282
The mounted file system does not support extended attributes.
ERROR_EAS_
NOT_
SUPPORTED
288
Attempt to release mutex not owned by caller.
ERROR_NOT_
OWNER
298
Too many posts were made to a semaphore.
ERROR_TOO_
MANY_POSTS
299
Only part of a ReadProcessMemory or WriteProcessMemory request was
completed.
ERROR_
PARTIAL_COPY
300
The oplock request is denied.
ERROR_
OPLOCK_NOT_
GRANTED
301
An invalid oplock acknowledgment was received by the system.
ERROR_
INVALID_
OPLOCK_
PROTOCOL
Automation Engine
317
The system cannot find message text for message number 0x%1 in the
message file for %2.
ERROR_MR_
MID_NOT_
FOUND
487
Attempt to access invalid address.
ERROR_
INVALID_
ADDRESS
534
Arithmetic result exceeded 32 bits.
ERROR_
ARITHMETIC_
OVERFLOW
535
There is a process on other end of the pipe.
ERROR_PIPE_
CONNECTED
536
Waiting for a process to open the other end of the pipe.
ERROR_PIPE_
LISTENING
994
Access to the extended attribute was denied.
ERROR_EA_
ACCESS_
DENIED
995
The I/O operation has been aborted because of either a thread exit or an
application request.
ERROR_
OPERATION_
ABORTED
996
Overlapped I/O event is not in a signaled state.
ERROR_IO_
INCOMPLETE
997
Overlapped I/O operation is in progress.
ERROR_IO_
PENDING
998
Invalid access to memory location.
ERROR_
NOACCESS
999
Error performing inpage operation. ERROR_
SWAPERROR 69
5.5.2 Win32 - Codes d'erreur (1 000-1 999)
Le tableau suivant contient les messages d'erreur Win32.
Code Description
Nom
1001
Recursion too deep; the stack overflowed.
ERROR_STACK_
OVERFLOW
1002
The window cannot act on the sent message.
ERROR_INVALID_
MESSAGE
1003
Cannot complete this function.
ERROR_CAN_NOT_
COMPLETE
1004
Invalid flags.
ERROR_INVALID_
FLAGS
1005
The volume does not contain a recognized file system. Please make sure ERROR_
that all required file system drivers are loaded and that the volume is not
UNRECOGNIZED_
corrupted.
VOLUME
1006
The volume for a file has been externally altered so that the opened file is
no longer valid.
ERROR_FILE_
INVALID
70
Chapter 5 Codes d'erreur externes
1007
The requested operation cannot be performed in full-screen mode.
ERROR_
FULLSCREEN_
MODE
1008
An attempt was made to reference a token that does not exist.
ERROR_NO_
TOKEN
1009
The configuration registry database is corrupt.
ERROR_BADDB
1010
The configuration registry key is invalid.
ERROR_BADKEY
1011
The configuration registry key could not be opened.
ERROR_
CANTOPEN
1012
The configuration registry key could not be read.
ERROR_
CANTREAD
1013
The configuration registry key could not be written.
ERROR_
CANTWRITE
1014
One of the files in the registry database had to be recovered by use of a
log or alternate copy. The recovery was successful.
ERROR_
REGISTRY_
RECOVERED
1015
The registry is corrupted. The structure of one of the files that contains
ERROR_
registry data is corrupted, or the system's image of the file in memory is
REGISTRY_
corrupted, or the file could not be recovered because the alternate copy or CORRUPT
log was absent or corrupted.
1016
An I/O operation initiated by the registry failed unrecoverably. The registry ERROR_
could not read in, or write out, or flush, one of the files that contain the
REGISTRY_IO_
system's image of the registry.
FAILED
1017
The system has attempted to load or restore a file into the registry, but the ERROR_NOT_
specified file is not in a registry file format.
REGISTRY_FILE
1018
Illegal operation attempted on a registry key that has been marked for
deletion.
ERROR_KEY_
DELETED
1019
System could not allocate the required space in a registry log.
ERROR_NO_LOG_
SPACE
1020
Cannot create a symbolic link in a registry key that already has subkeys
or values.
ERROR_KEY_HAS_
CHILDREN
1021
Cannot create a stable subkey under a volatile parent key.
ERROR_CHILD_
MUST_BE_
VOLATILE
1022
A notify change request is being completed and the information is not
being returned in the caller's buffer. The caller now needs to enumerate
the files to find the changes.
ERROR_NOTIFY_
ENUM_DIR
1051
A stop control has been sent to a service that other running services are
dependent on.
ERROR_
DEPENDENT_
SERVICES_
RUNNING
1052
The requested control is not valid for this service.
ERROR_INVALID_
SERVICE_
CONTROL
1053
The service did not respond to the start or control request in a timely
fashion.
ERROR_SERVICE_
REQUEST_
TIMEOUT
Automation Engine
71
1054
A thread could not be created for the service.
ERROR_SERVICE_
NO_THREAD
1055
The service database is locked.
ERROR_SERVICE_
DATABASE_
LOCKED
1056
An instance of the service is already running.
ERROR_SERVICE_
ALREADY_
RUNNING
1057
The account name is invalid or does not exist.
ERROR_INVALID_
SERVICE_
ACCOUNT
1058
The service cannot be started, either because it is disabled or because it
has no enabled devices associated with it.
ERROR_SERVICE_
DISABLED
1059
Circular service dependency was specified.
ERROR_
CIRCULAR_
DEPENDENCY
1060
The specified service does not exist as an installed service.
ERROR_SERVICE_
DOES_NOT_EXIST
1061
The service cannot accept control messages at this time.
ERROR_SERVICE_
CANNOT_ACCEPT_
CTRL
1062
The service has not been started.
ERROR_SERVICE_
NOT_ACTIVE
1063
The service process could not connect to the service controller.
ERROR_FAILED_
SERVICE_
CONTROLLER_
CONNECT
1064
An exception occurred in the service when handling the control request.
ERROR_
EXCEPTION_IN_
SERVICE
1065
The database specified does not exist.
ERROR_
DATABASE_DOES_
NOT_EXIST
1066
The service has returned a service-specific error code.
ERROR_SERVICE_
SPECIFIC_ERROR
1067
The process terminated unexpectedly.
ERROR_
PROCESS_
ABORTED
1068
The dependency service or group failed to start.
ERROR_SERVICE_
DEPENDENCY_
FAIL
1069
The service did not start due to a logon failure.
ERROR_SERVICE_
LOGON_FAILED
1070
After starting, the service hung in a start-pending state.
ERROR_SERVICE_
START_HANG
1071
The specified service database lock is invalid.
ERROR_INVALID_
SERVICE_LOCK
72
Chapter 5 Codes d'erreur externes
1072
The specified service has been marked for deletion.
ERROR_SERVICE_
MARKED_FOR_
DELETE
1073
The specified service already exists.
ERROR_SERVICE_
EXISTS
1074
The system is currently running with the last-known-good configuration.
ERROR_ALREADY_
RUNNING_LKG
1075
The dependency service does not exist or has been marked for deletion.
ERROR_SERVICE_
DEPENDENCY_
DELETED
1076
The current boot has already been accepted for use as the last-knowngood control set.
ERROR_BOOT_
ALREADY_
ACCEPTED
1077
No attempts to start the service have been made since the last boot.
ERROR_SERVICE_
NEVER_STARTED
1078
The name is already in use as either a service name or a service display
name.
ERROR_
DUPLICATE_
SERVICE_NAME
1079
The account specified for this service is different from the account
specified for other services running in the same process.
ERROR_
DIFFERENT_
SERVICE_
ACCOUNT
1080
Failure actions can only be set for Win32 services, not for drivers.
ERROR_CANNOT_
DETECT_DRIVER_
FAILURE
1081
This service runs in the same process as the service control manager.
ERROR_CANNOT_
Therefore, the service control manager cannot take action if this service's DETECT_
process terminates unexpectedly.
PROCESS_ABORT
1082
No recovery program has been configured for this service.
ERROR_NO_
RECOVERY_
PROGRAM
1083
The executable program that this service is configured to run in does not
implement the service.
ERROR_SERVICE_
NOT_IN_EXE
1100
The physical end of the tape has been reached.
ERROR_END_OF_
MEDIA
1101
A tape access reached a filemark.
ERROR_
FILEMARK_
DETECTED
1102
The beginning of the tape or a partition was encountered.
ERROR_
BEGINNING_OF_
MEDIA
1103
A tape access reached the end of a set of files.
ERROR_
SETMARK_
DETECTED
1104
No more data is on the tape.
ERROR_NO_DATA_
DETECTED
Automation Engine
73
1105
Tape could not be partitioned.
ERROR_
PARTITION_
FAILURE
1106
When accessing a new tape of a multivolume partition, the current block
size is incorrect.
ERROR_INVALID_
BLOCK_LENGTH
1107
Tape partition information could not be found when loading a tape.
ERROR_DEVICE_
NOT_PARTITIONED
1108
Unable to lock the media eject mechanism.
ERROR_UNABLE_
TO_LOCK_MEDIA
1109
Unable to unload the media.
ERROR_UNABLE_
TO_UNLOAD_
MEDIA
1110
The media in the drive may have changed.
ERROR_MEDIA_
CHANGED
1111
The I/O bus was reset.
ERROR_BUS_
RESET
1112
No media in drive.
ERROR_NO_
MEDIA_IN_DRIVE
1113
No mapping for the Unicode character exists in the target multi-byte code ERROR_NO_
page.
UNICODE_
TRANSLATION
1114
A dynamic link library (DLL) initialization routine failed.
ERROR_DLL_INIT_
FAILED
1115
A system shutdown is in progress.
ERROR_
SHUTDOWN_IN_
PROGRESS
1116
Unable to abort the system shutdown because no shutdown was in
progress.
ERROR_NO_
SHUTDOWN_IN_
PROGRESS
1117
The request could not be performed because of an I/O device error.
ERROR_IO_
DEVICE
1118
No serial device was successfully initialized. The serial driver will unload. ERROR_SERIAL_
NO_DEVICE
1119
Unable to open a device that was sharing an interrupt request (IRQ) with
other devices. At least one other device that uses that IRQ was already
opened.
ERROR_IRQ_BUSY
1120
A serial I/O operation was completed by another write to the serial port.
(The IOCTL_SERIAL_XOFF_COUNTER reached zero.)
ERROR_MORE_
WRITES
1121
A serial I/O operation completed because the timeout period expired. (The ERROR_
IOCTL_SERIAL_XOFF_COUNTER did not reach zero.)
COUNTER_
TIMEOUT
1122
No ID address mark was found on the floppy disk.
ERROR_FLOPPY_
ID_MARK_NOT_
FOUND
1123
Mismatch between the floppy disk sector ID field and the floppy disk
controller track address.
ERROR_FLOPPY_
WRONG_
CYLINDER
74
Chapter 5 Codes d'erreur externes
1124
The floppy disk controller reported an error that is not recognized by the
floppy disk driver.
ERROR_FLOPPY_
UNKNOWN_
ERROR
1125
The floppy disk controller returned inconsistent results in its registers.
ERROR_FLOPPY_
BAD_REGISTERS
1126
While accessing the hard disk, a recalibrate operation failed, even after
retries.
ERROR_DISK_
RECALIBRATE_
FAILED
1127
While accessing the hard disk, a disk operation failed even after retries.
ERROR_DISK_
OPERATION_
FAILED
1128
While accessing the hard disk, a disk controller reset was needed, but
even that failed.
ERROR_DISK_
RESET_FAILED
1129
Physical end of tape encountered.
ERROR_EOM_
OVERFLOW
1130
Not enough server storage is available to process this command.
ERROR_NOT_
ENOUGH_
SERVER_MEMORY
1131
A potential deadlock condition has been detected.
ERROR_
POSSIBLE_
DEADLOCK
1132
The base address or the file offset specified does not have the proper
alignment.
ERROR_MAPPED_
ALIGNMENT
1140
An attempt to change the system power state was vetoed by another
application or driver.
ERROR_SET_
POWER_STATE_
VETOED
1141
The system BIOS failed an attempt to change the system power state.
ERROR_SET_
POWER_STATE_
FAILED
1142
An attempt was made to create more links on a file than the file system
supports.
ERROR_TOO_
MANY_LINKS
1150
The specified program requires a newer version of Windows.
ERROR_OLD_WIN_
VERSION
1151
The specified program is not a Windows or MS-DOS program.
ERROR_APP_
WRONG_OS
1152
Cannot start more than one instance of the specified program.
ERROR_SINGLE_
INSTANCE_APP
1153
The specified program was written for an earlier version of Windows.
ERROR_RMODE_
APP
1154
One of the library files needed to run this application is damaged.
ERROR_INVALID_
DLL
1155
No application is associated with the specified file for this operation.
ERROR_NO_
ASSOCIATION
1156
An error occurred in sending the command to the application.
ERROR_DDE_FAIL
1157
One of the library files needed to run this application cannot be found.
ERROR_DLL_NOT_
FOUND
Automation Engine
75
1158
The current process has used all of its system allowance of handles for
Window Manager objects.
ERROR_NO_
MORE_USER_
HANDLES
1159
The message can be used only with synchronous operations.
ERROR_
MESSAGE_SYNC_
ONLY
1160
The indicated source element has no media.
ERROR_SOURCE_
ELEMENT_EMPTY
1161
The indicated destination element already contains media.
ERROR_
DESTINATION_
ELEMENT_FULL
1162
The indicated element does not exist.
ERROR_ILLEGAL_
ELEMENT_
ADDRESS
1163
The indicated element is part of a magazine that is not present.
ERROR_
MAGAZINE_NOT_
PRESENT
1164
The indicated device requires reinitialization due to hardware errors.
ERROR_DEVICE_
REINITIALIZATION_
NEEDED
1165
The device has indicated that cleaning is required before further
operations are attempted.
ERROR_DEVICE_
REQUIRES_
CLEANING
1166
The device has indicated that its door is open.
ERROR_DEVICE_
DOOR_OPEN
1167
The device is not connected.
ERROR_DEVICE_
NOT_CONNECTED
1168
Element not found.
ERROR_NOT_
FOUND
1169
There was no match for the specified key in the index.
ERROR_NO_
MATCH
1170
The property set specified does not exist on the object.
ERROR_SET_NOT_
FOUND
1171
The point passed to GetMouseMovePointsEx is not in the buffer.
ERROR_POINT_
NOT_FOUND
1172
The tracking (workstation) service is not running.
ERROR_NO_
TRACKING_
SERVICE
1173
The Volume ID could not be found.
ERROR_NO_
VOLUME_ID
1174
The specified Very Large Memory (64-bit) operation is invalid.
ERROR_INVALID_
VLM_OPERATION
1175
Unable to remove the file to be replaced.
ERROR_UNABLE_
TO_REMOVE_
REPLACED
76
Chapter 5 Codes d'erreur externes
1176
Unable to move the replacement file to the file to be replaced. The file to
be replaced has retained its original name.
ERROR_UNABLE_
TO_MOVE_
REPLACEMENT
1177
Unable to move the replacement file to the file to be replaced. The file to
be replaced has been renamed using the backup name.
ERROR_UNABLE_
TO_MOVE_
REPLACEMENT_2
1178
The volume change journal is being deleted.
ERROR_JOURNAL_
DELETE_IN_
PROGRESS
1179
The volume change journal service is not active.
ERROR_JOURNAL_
NOT_ACTIVE
1180
A file was found, but it may not be the correct file.
ERROR_
POTENTIAL_FILE_
FOUND
1181
The journal entry has been deleted from the journal.
ERROR_JOURNAL_
ENTRY_DELETED
1200
The specified device name is invalid.
ERROR_BAD_
DEVICE
1201
The device is not currently connected but it is a remembered connection.
ERROR_
CONNECTION_
UNAVAIL
1202
An attempt was made to remember a device that had previously been
remembered.
ERROR_DEVICE_
ALREADY_
REMEMBERED
1203
No network provider accepted the given network path.
ERROR_NO_NET_
OR_BAD_PATH
1204
The specified network provider name is invalid.
ERROR_BAD_
PROVIDER
1205
Unable to open the network connection profile.
ERROR_CANNOT_
OPEN_PROFILE
1206
The network connection profile is corrupted.
ERROR_BAD_
PROFILE
1207
Cannot enumerate a noncontainer.
ERROR_NOT_
CONTAINER
1208
An extended error has occurred.
ERROR_
EXTENDED_
ERROR
1209
The format of the specified group name is invalid.
ERROR_INVALID_
GROUPNAME
1210
The format of the specified computer name is invalid.
ERROR_INVALID_
COMPUTERNAME
1211
The format of the specified event name is invalid.
ERROR_INVALID_
EVENTNAME
1212
The format of the specified domain name is invalid.
ERROR_INVALID_
DOMAINNAME
1213
The format of the specified service name is invalid.
ERROR_INVALID_
SERVICENAME
Automation Engine
77
1214
The format of the specified network name is invalid.
ERROR_INVALID_
NETNAME
1215
The format of the specified share name is invalid.
ERROR_INVALID_
SHARENAME
1216
The format of the specified password is invalid.
ERROR_INVALID_
PASSWORDNAME
1217
The format of the specified message name is invalid.
ERROR_INVALID_
MESSAGENAME
1218
The format of the specified message destination is invalid.
ERROR_INVALID_
MESSAGEDEST
1219
The credentials supplied conflict with an existing set of credentials.
ERROR_SESSION_
CREDENTIAL_
CONFLICT
1220
An attempt was made to establish a session to a network server, but
there are already too many sessions established to that server.
ERROR_REMOTE_
SESSION_LIMIT_
EXCEEDED
1221
The workgroup or domain name is already in use by another computer on
the network.
ERROR_DUP_
DOMAINNAME
1222
The network is not present or not started.
ERROR_NO_
NETWORK
1223
The operation was canceled by the user.
ERROR_
CANCELLED
1224
The requested operation cannot be performed on a file with a usermapped section open.
ERROR_USER_
MAPPED_FILE
1225
The remote system refused the network connection.
ERROR_
CONNECTION_
REFUSED
1226
The network connection was gracefully closed.
ERROR_
GRACEFUL_
DISCONNECT
1227
The network transport endpoint already has an address associated with it. ERROR_
ADDRESS_
ALREADY_
ASSOCIATED
1228
An address has not yet been associated with the network endpoint.
ERROR_
ADDRESS_NOT_
ASSOCIATED
1229
An operation was attempted on a nonexistent network connection.
ERROR_
CONNECTION_
INVALID
1230
An invalid operation was attempted on an active network connection.
ERROR_
CONNECTION_
ACTIVE
1231
The remote network is not reachable by the transport.
ERROR_
NETWORK_
UNREACHABLE
78
Chapter 5 Codes d'erreur externes
1232
The remote system is not reachable by the transport.
ERROR_HOST_
UNREACHABLE
1233
The remote system does not support the transport protocol.
ERROR_
PROTOCOL_
UNREACHABLE
1234
No service is operating at the destination network endpoint on the remote ERROR_PORT_
system.
UNREACHABLE
1235
The request was aborted.
ERROR_
REQUEST_
ABORTED
1236
The network connection was aborted by the local system.
ERROR_
CONNECTION_
ABORTED
1237
The operation could not be completed. A retry should be performed.
ERROR_RETRY
1238
A connection to the server could not be made because the limit on the
number of concurrent connections for this account has been reached.
ERROR_
CONNECTION_
COUNT_LIMIT
1239
Attempting to log in during an unauthorized time of day for this account.
ERROR_LOGIN_
TIME_
RESTRICTION
1240
The account is not authorized to log in from this station.
ERROR_LOGIN_
WKSTA_
RESTRICTION
1241
The network address could not be used for the operation requested.
ERROR_
INCORRECT_
ADDRESS
1242
The service is already registered.
ERROR_ALREADY_
REGISTERED
1243
The specified service does not exist.
ERROR_SERVICE_
NOT_FOUND
1244
The operation being requested was not performed because the user has
not been authenticated.
ERROR_NOT_
AUTHENTICATED
1245
The operation being requested was not performed because the user has
not logged on to the network. The specified service does not exist.
ERROR_NOT_
LOGGED_ON
1246
Continue with work in progress.
ERROR_CONTINUE
1247
An attempt was made to perform an initialization operation when
initialization has already been completed.
ERROR_ALREADY_
INITIALIZED
1248
No more local devices.
ERROR_NO_
MORE_DEVICES
1249
The specified site does not exist.
ERROR_NO_
SUCH_SITE
1250
A domain controller with the specified name already exists.
ERROR_DOMAIN_
CONTROLLER_
EXISTS
1251
This operation is supported only when you are connected to the server.
ERROR_ONLY_IF_
CONNECTED
Automation Engine
79
1300
Not all privileges referenced are assigned to the caller.
ERROR_NOT_ALL_
ASSIGNED
1301
Some mapping between account names and security IDs was not done.
ERROR_SOME_
NOT_MAPPED
1302
No system quota limits are specifically set for this account.
ERROR_NO_
QUOTAS_FOR_
ACCOUNT
1303
No encryption key is available. A well-known encryption key was
returned.
ERROR_LOCAL_
USER_SESSION_
KEY
1304
The Windows NT password is too complex to be converted to a LAN
Manager password. The LAN Manager password returned is a NULL
string.
ERROR_NULL_LM_
PASSWORD
1305
The revision level is unknown.
ERROR_
UNKNOWN_
REVISION
1306
Indicates two revision levels are incompatible.
ERROR_
REVISION_
MISMATCH
1307
This security ID may not be assigned as the owner of this object.
ERROR_INVALID_
OWNER
1308
This security ID may not be assigned as the primary group of an object.
ERROR_INVALID_
PRIMARY_GROUP
1309
An attempt has been made to operate on an impersonation token by a
thread that is not currently impersonating a client.
ERROR_NO_
IMPERSONATION_
TOKEN
1310
The group may not be disabled.
ERROR_CANT_
DISABLE_
MANDATORY
1311
There are currently no logon servers available to service the logon
request.
ERROR_NO_
LOGON_SERVERS
1312
A specified logon session does not exist. It may already have been
terminated.
ERROR_NO_
SUCH_LOGON_
SESSION
1313
A specified privilege does not exist.
ERROR_NO_
SUCH_PRIVILEGE
1314
A required privilege is not held by the client.
ERROR_
PRIVILEGE_NOT_
HELD
1315
The name provided is not a properly formed account name.
ERROR_INVALID_
ACCOUNT_NAME
1316
The specified user already exists.
ERROR_USER_
EXISTS
1317
The specified user does not exist.
ERROR_NO_
SUCH_USER
1318
The specified group already exists.
ERROR_GROUP_
EXISTS
80
Chapter 5 Codes d'erreur externes
1319
The specified group does not exist.
ERROR_NO_
SUCH_GROUP
1320
Either the specified user account is already a member of the specified
group, or the specified group cannot be deleted because it contains a
member.
ERROR_MEMBER_
IN_GROUP
1321
The specified user account is not a member of the specified group
account.
ERROR_MEMBER_
NOT_IN_GROUP
1322
The last remaining administration account cannot be disabled or deleted.
ERROR_LAST_
ADMIN
1323
Unable to update the password. The value provided as the current
password is incorrect.
ERROR_WRONG_
PASSWORD
1324
Unable to update the password. The value provided for the new password ERROR_ILL_
contains values that are not allowed in passwords.
FORMED_
PASSWORD
1325
Unable to update the password because a password update rule has been ERROR_
violated.
PASSWORD_
RESTRICTION
1326
Logon failure: unknown user name or bad password.
ERROR_LOGON_
FAILURE
1327
Logon failure: user account restriction.
ERROR_
ACCOUNT_
RESTRICTION
1328
Logon failure: account logon time restriction violation.
ERROR_INVALID_
LOGON_HOURS
1329
Logon failure: user not allowed to log on to this computer.
ERROR_INVALID_
WORKSTATION
1330
Logon failure: the specified account password has expired.
ERROR_
PASSWORD_
EXPIRED
1331
Logon failure: account currently disabled.
ERROR_
ACCOUNT_
DISABLED
1332
No mapping between account names and security IDs was done.
ERROR_NONE_
MAPPED
1333
Too many local user identifiers (LUIDs) were requested at one time.
ERROR_TOO_
MANY_LUIDS_
REQUESTED
1334
No more local user identifiers (LUIDs) are available.
ERROR_LUIDS_
EXHAUSTED
1335
The subauthority part of a security ID is invalid for this particular use.
ERROR_INVALID_
SUB_AUTHORITY
1336
The access control list (ACL) structure is invalid.
ERROR_INVALID_
ACL
1337
The security ID structure is invalid.
ERROR_INVALID_
SID
1338
The security descriptor structure is invalid.
ERROR_INVALID_
SECURITY_DESCR
Automation Engine
81
1340
The inherited access control list (ACL) or access control entry (ACE)
could not be built.
ERROR_BAD_
INHERITANCE_ACL
1341
The server is currently disabled.
ERROR_SERVER_
DISABLED
1342
The server is currently enabled.
ERROR_SERVER_
NOT_DISABLED
1343
The value provided was an invalid value for an identifier authority.
ERROR_INVALID_
ID_AUTHORITY
1344
No more memory is available for security information updates.
ERROR_
ALLOTTED_
SPACE_
EXCEEDED
1345
The specified attributes are invalid, or incompatible with the attributes for
the group as a whole.
ERROR_INVALID_
GROUP_
ATTRIBUTES
1346
Either a required impersonation level was not provided, or the provided
impersonation level is invalid.
ERROR_BAD_
IMPERSONATION_
LEVEL
1347
Cannot open an anonymous level security token.
ERROR_CANT_
OPEN_
ANONYMOUS
1348
The validation information class requested was invalid.
ERROR_BAD_
VALIDATION_
CLASS
1349
The type of the token is inappropriate for its attempted use.
ERROR_BAD_
TOKEN_TYPE
1350
Unable to perform a security operation on an object that has no
associated security.
ERROR_NO_
SECURITY_ON_
OBJECT
1351
Configuration information could not be read from the domain controller,
either because the machine is unavailable, or access has been denied.
ERROR_CANT_
ACCESS_DOMAIN_
INFO
1352
The security account manager (SAM) or local security authority (LSA)
server was in the wrong state to perform the security operation.
ERROR_INVALID_
SERVER_STATE
1353
The domain was in the wrong state to perform the security operation.
ERROR_INVALID_
DOMAIN_STATE
1354
This operation is only allowed for the Primary Domain Controller of the
domain.
ERROR_INVALID_
DOMAIN_ROLE
1355
The specified domain did not exist.
ERROR_NO_
SUCH_DOMAIN
1356
The specified domain already exists.
ERROR_DOMAIN_
EXISTS
1357
An attempt was made to exceed the limit on the number of domains per
server.
ERROR_DOMAIN_
LIMIT_EXCEEDED
1358
Unable to complete the requested operation because of either a
catastrophic media failure or a data structure corruption on the disk.
ERROR_
INTERNAL_DB_
CORRUPTION
82
Chapter 5 Codes d'erreur externes
1359
The security account database contains an internal inconsistency.
ERROR_
INTERNAL_ERROR
1360
Generic access types were contained in an access mask which should
already be mapped to nongeneric types.
ERROR_GENERIC_
NOT_MAPPED
1361
A security descriptor is not in the right format (absolute or self-relative).
ERROR_BAD_
DESCRIPTOR_
FORMAT
1362
The requested action is restricted for use by logon processes only. The
calling process has not registered as a logon process.
ERROR_NOT_
LOGON_PROCESS
1363
Cannot start a new logon session with an ID that is already in use.
ERROR_LOGON_
SESSION_EXISTS
1364
A specified authentication package is unknown.
ERROR_NO_
SUCH_PACKAGE
1365
The logon session is not in a state that is consistent with the requested
operation.
ERROR_BAD_
LOGON_SESSION_
STATE
1366
The logon session ID is already in use.
ERROR_LOGON_
SESSION_
COLLISION
1367
A logon request contained an invalid logon type value.
ERROR_INVALID_
LOGON_TYPE
1368
Unable to impersonate using a named pipe until data has been read from
that pipe.
ERROR_CANNOT_
IMPERSONATE
1369
The transaction state of a registry subtree is incompatible with the
requested operation.
ERROR_RXACT_
INVALID_STATE
1370
An internal security database corruption has been encountered.
ERROR_RXACT_
COMMIT_FAILURE
1371
Cannot perform this operation on built-in accounts.
ERROR_SPECIAL_
ACCOUNT
1372
Cannot perform this operation on this built-in special group.
ERROR_SPECIAL_
GROUP
1373
Cannot perform this operation on this built-in special user.
ERROR_SPECIAL_
USER
1374
The user cannot be removed from a group because the group is currently
the user's primary group.
ERROR_
MEMBERS_
PRIMARY_GROUP
1375
The token is already in use as a primary token.
ERROR_TOKEN_
ALREADY_IN_USE
1376
The specified local group does not exist.
ERROR_NO_
SUCH_ALIAS
1377
The specified account name is not a member of the local group.
ERROR_MEMBER_
NOT_IN_ALIAS
1378
The specified account name is already a member of the local group.
ERROR_MEMBER_
IN_ALIAS
1379
The specified local group already exists.
ERROR_ALIAS_
EXISTS
Automation Engine
83
1380
Logon failure: the user has not been granted the requested logon type at
this computer.
ERROR_LOGON_
NOT_GRANTED
1381
The maximum number of secrets that may be stored in a single system
has been exceeded.
ERROR_TOO_
MANY_SECRETS
1382
The length of a secret exceeds the maximum length allowed.
ERROR_SECRET_
TOO_LONG
1383
The local security authority database contains an internal inconsistency.
ERROR_
INTERNAL_DB_
ERROR
1384
During a logon attempt, the user's security context accumulated too
many security IDs.
ERROR_TOO_
MANY_CONTEXT_
IDS
1385
Logon failure: the user has not been granted the requested logon type at
this computer.
ERROR_LOGON_
TYPE_NOT_
GRANTED
1386
A cross-encrypted password is necessary to change a user password.
ERROR_NT_
CROSS_
ENCRYPTION_
REQUIRED
1387
A new member could not be added to a local group because the member
does not exist.
ERROR_NO_
SUCH_MEMBER
1388
A new member could not be added to a local group because the member
has the wrong account type.
ERROR_INVALID_
MEMBER
1389
Too many security IDs have been specified.
ERROR_TOO_
MANY_SIDS
1390
A cross-encrypted password is necessary to change this user password. ERROR_LM_
CROSS_
ENCRYPTION_
REQUIRED
1391
Indicates an ACL contains no inheritable components.
ERROR_NO_
INHERITANCE
1392
The file or directory is corrupted and unreadable.
ERROR_FILE_
CORRUPT
1393
The disk structure is corrupted and unreadable.
ERROR_DISK_
CORRUPT
1394
There is no user session key for the specified logon session.
ERROR_NO_
USER_SESSION_
KEY
1395
The service being accessed is licensed for a particular number of
connections. No more connections can be made to the service at this
time because there are already as many connections as the service can
accept.
ERROR_LICENSE_
QUOTA_
EXCEEDED
1396
Logon Failure: The target account name is incorrect.
ERROR_WRONG_
TARGET_NAME
1397
Mutual Authentication failed. The server's password is out of date at the
domain controller.
ERROR_MUTUAL_
AUTH_FAILED
84
Chapter 5 Codes d'erreur externes
1398
There is a time difference between the client and server.
ERROR_TIME_
SKEW
1400
Invalid window handle.
ERROR_INVALID_
WINDOW_HANDLE
1401
Invalid menu handle.
ERROR_INVALID_
MENU_HANDLE
1402
Invalid cursor handle.
ERROR_INVALID_
CURSOR_HANDLE
1403
Invalid accelerator table handle.
ERROR_INVALID_
ACCEL_HANDLE
1404
Invalid hook handle.
ERROR_INVALID_
HOOK_HANDLE
1405
Invalid handle to a multiple-window position structure.
ERROR_INVALID_
DWP_HANDLE
1406
Cannot create a top-level child window.
ERROR_TLW_
WITH_WSCHILD
1407
Cannot find window class.
ERROR_CANNOT_
FIND_WND_CLASS
1408
Invalid window; it belongs to other thread.
ERROR_WINDOW_
OF_OTHER_
THREAD
1409
Hot key is already registered.
ERROR_HOTKEY_
ALREADY_
REGISTERED
1410
Class already exists.
ERROR_CLASS_
ALREADY_EXISTS
1411
Class does not exist.
ERROR_CLASS_
DOES_NOT_EXIST
1412
Class still has open windows.
ERROR_CLASS_
HAS_WINDOWS
1413
Invalid index.
ERROR_INVALID_
INDEX
1414
Invalid icon handle.
ERROR_INVALID_
ICON_HANDLE
1415
Using private DIALOG window words.
ERROR_PRIVATE_
DIALOG_INDEX
1416
The list box identifier was not found.
ERROR_LISTBOX_
ID_NOT_FOUND
1417
No wildcards were found.
ERROR_NO_
WILDCARD_
CHARACTERS
1418
Thread does not have a clipboard open.
ERROR_
CLIPBOARD_NOT_
OPEN
1419
Hot key is not registered.
ERROR_HOTKEY_
NOT_REGISTERED
Automation Engine
85
1420
The window is not a valid dialog window.
ERROR_WINDOW_
NOT_DIALOG
1421
Control ID not found.
ERROR_
CONTROL_ID_
NOT_FOUND
1422
Invalid message for a combo box because it does not have an edit
control.
ERROR_INVALID_
COMBOBOX_
MESSAGE
1423
The window is not a combo box.
ERROR_WINDOW_
NOT_COMBOBOX
1424
Height must be less than 256.
ERROR_INVALID_
EDIT_HEIGHT
1425
Invalid device context (DC) handle.
ERROR_DC_NOT_
FOUND
1426
Invalid hook procedure type.
ERROR_INVALID_
HOOK_FILTER
1427
Invalid hook procedure.
ERROR_INVALID_
FILTER_PROC
1428
Cannot set nonlocal hook without a module handle.
ERROR_HOOK_
NEEDS_HMOD
1429
This hook procedure can only be set globally.
ERROR_GLOBAL_
ONLY_HOOK
1430
The journal hook procedure is already installed.
ERROR_JOURNAL_
HOOK_SET
1431
The hook procedure is not installed.
ERROR_HOOK_
NOT_INSTALLED
1432
Invalid message for single-selection list box.
ERROR_INVALID_
LB_MESSAGE
1433
LB_SETCOUNT sent to non-lazy list box.
ERROR_
SETCOUNT_ON_
BAD_LB
1434
This list box does not support tab stops.
ERROR_LB_
WITHOUT_
TABSTOPS
1435
Cannot destroy object created by another thread.
ERROR_
DESTROY_
OBJECT_OF_
OTHER_THREAD
1436
Child windows cannot have menus.
ERROR_CHILD_
WINDOW_MENU
1437
The window does not have a system menu.
ERROR_NO_
SYSTEM_MENU
1438
Invalid message box style.
ERROR_INVALID_
MSGBOX_STYLE
1439
Invalid system-wide (SPI_*) parameter.
ERROR_INVALID_
SPI_VALUE
86
Chapter 5 Codes d'erreur externes
1440
Screen already locked.
ERROR_SCREEN_
ALREADY_LOCKED
1441
All handles to windows in a multiple-window position structure must have ERROR_HWNDS_
the same parent.
HAVE_DIFF_
PARENT
1442
The window is not a child window.
ERROR_NOT_
CHILD_WINDOW
1443
Invalid GW_* command.
ERROR_INVALID_
GW_COMMAND
1444
Invalid thread identifier.
ERROR_INVALID_
THREAD_ID
1445
Cannot process a message from a window that is not a multiple
document interface (MDI) window.
ERROR_NON_
MDICHILD_
WINDOW
1446
Popup menu already active.
ERROR_POPUP_
ALREADY_ACTIVE
1447
The window does not have scroll bars.
ERROR_NO_
SCROLLBARS
1448
Scroll bar range cannot be greater than 0x7FFF.
ERROR_INVALID_
SCROLLBAR_
RANGE
1449
Cannot show or remove the window in the way specified.
ERROR_INVALID_
SHOWWIN_
COMMAND
1450
Insufficient system resources exist to complete the requested service.
ERROR_NO_
SYSTEM_
RESOURCES
1451
Insufficient system resources exist to complete the requested service.
ERROR_
NONPAGED_
SYSTEM_
RESOURCES
1452
Insufficient system resources exist to complete the requested service.
ERROR_PAGED_
SYSTEM_
RESOURCES
1453
Insufficient quota to complete the requested service.
ERROR_
WORKING_SET_
QUOTA
1454
Insufficient quota to complete the requested service.
ERROR_
PAGEFILE_QUOTA
1455
The paging file is too small for this operation to complete.
ERROR_
COMMITMENT_
LIMIT
1456
A menu item was not found.
ERROR_MENU_
ITEM_NOT_FOUND
1457
Invalid keyboard layout handle.
ERROR_INVALID_
KEYBOARD_
HANDLE
Automation Engine
87
1458
Hook type not allowed.
ERROR_HOOK_
TYPE_NOT_
ALLOWED
1459
This operation requires an interactive window station.
ERROR_
REQUIRES_
INTERACTIVE_
WINDOWSTATION
1460
This operation returned because the timeout period expired.
ERROR_TIMEOUT
1461
Invalid monitor handle.
ERROR_INVALID_
MONITOR_HANDLE
1500
The event log file is corrupted.
ERROR_
EVENTLOG_FILE_
CORRUPT
1501
No event log file could be opened, so the event logging service did not
start.
ERROR_
EVENTLOG_CANT_
START
1502
The event log file is full.
ERROR_LOG_FILE_
FULL
1503
The event log file has changed between read operations.
ERROR_
EVENTLOG_FILE_
CHANGED
1601
Failure accessing installation service.
ERROR_INSTALL_
SERVICE_FAILURE
1602
User cancelled installation.
ERROR_INSTALL_
USEREXIT
1603
Fatal error during installation.
ERROR_INSTALL_
FAILURE
1604
Installation suspended, incomplete.
ERROR_INSTALL_
SUSPEND
1605
Product is not installed.
ERROR_
UNKNOWN_
PRODUCT
1606
Feature ID not registered.
ERROR_
UNKNOWN_
FEATURE
1607
Component ID not registered.
ERROR_
UNKNOWN_
COMPONENT
1608
Unknown property.
ERROR_
UNKNOWN_
PROPERTY
1609
Handle is in an invalid state.
ERROR_INVALID_
HANDLE_STATE
1610
Configuration data corrupt.
ERROR_BAD_
CONFIGURATION
1611
Component qualifier not present.
ERROR_INDEX_
ABSENT
88
Chapter 5 Codes d'erreur externes
1612
Install source unavailable.
ERROR_INSTALL_
SOURCE_ABSENT
1613
Database version unsupported.
ERROR_INSTALL_
PACKAGE_
VERSION
1614
Product is uninstalled.
ERROR_
PRODUCT_
UNINSTALLED
1615
SQL query syntax invalid or unsupported.
ERROR_BAD_
QUERY_SYNTAX
1616
Record field does not exist.
ERROR_INVALID_
FIELD
1617
The device has been removed.
ERROR_DEVICE_
REMOVED
1618
An installation is in progress.
ERROR_INSTALL_
ALREADY_
RUNNING
1619
Installation package could not be opened.
ERROR_INSTALL_
PACKAGE_OPEN_
FAILED
1620
Installation package invalid.
ERROR_INSTALL_
PACKAGE_INVALID
1621
Could not initialize installer user interface.
ERROR_INSTALL_
UI_FAILURE
1622
Error opening installation log file.
ERROR_INSTALL_
LOG_FAILURE
1623
Product language not supported by system.
ERROR_INSTALL_
LANGUAGE_
UNSUPPORTED
1624
Error applying transform to install package.
ERROR_INSTALL_
TRANSFORM_
FAILURE
1625
Install package signature not accepted.
ERROR_INSTALL_
PACKAGE_
REJECTED
1626
Function could not be executed.
ERROR_
FUNCTION_NOT_
CALLED
1627
Function failed during execution.
ERROR_
FUNCTION_FAILED
1628
Invalid or unknown table specified.
ERROR_INVALID_
TABLE
1629
Data supplied is of wrong type.
ERROR_
DATATYPE_
MISMATCH
Automation Engine
89
1630
Data of this type is not supported.
ERROR_
UNSUPPORTED_
TYPE
1631
Unable to create requested object.
ERROR_CREATE_
FAILED
1632
Temp folder is full or inaccessible.
ERROR_INSTALL_
TEMP_
UNWRITABLE
1633
Product platform not supported.
ERROR_INSTALL_
PLATFORM_
UNSUPPORTED
1634
Component not used on this computer.
ERROR_INSTALL_
NOTUSED
1635
Patch package could not be opened.
ERROR_PATCH_
PACKAGE_OPEN_
FAILED
1636
Patch package invalid.
ERROR_PATCH_
PACKAGE_INVALID
1637
Patch package unsupported.
ERROR_PATCH_
PACKAGE_
UNSUPPORTED.
1638
Invalid command line argument.
ERROR_INVALID_
COMMAND_LINE
1700
The string binding is invalid.
RPC_S_INVALID_
STRING_BINDING
1701
The binding handle is not the correct type.
RPC_S_WRONG_
KIND_OF_BINDING
1702
The binding handle is invalid.
RPC_S_INVALID_
BINDING
1703
The RPC protocol sequence is not supported.
RPC_S_PROTSEQ_
NOT_SUPPORTED
1704
The RPC protocol sequence is invalid.
RPC_S_INVALID_
RPC_PROTSEQ
1705
The string universal unique identifier (UUID) is invalid.
RPC_S_INVALID_
STRING_UUID
1706
The endpoint format is invalid.
RPC_S_INVALID_
ENDPOINT_
FORMAT
1707
The network address is invalid.
RPC_S_INVALID_
NET_ADDR
1708
No endpoint was found.
RPC_S_NO_
ENDPOINT_FOUND
1709
The timeout value is invalid.
RPC_S_INVALID_
TIMEOUT
1710
The object universal unique identifier (UUID) was not found.
RPC_S_OBJECT_
NOT_FOUND
90
Chapter 5 Codes d'erreur externes
1711
The object universal unique identifier (UUID) has already been registered. RPC_S_ALREADY_
REGISTERED
1712
The type universal unique identifier (UUID) has already been registered.
RPC_S_TYPE_
ALREADY_
REGISTERED
1713
The RPC server is already listening.
RPC_S_ALREADY_
LISTENING
1714
No protocol sequences have been registered.
RPC_S_NO_
PROTSEQS_
REGISTERED
1715
The RPC server is not listening.
RPC_S_NOT_
LISTENING
1716
The manager type is unknown.
RPC_S_
UNKNOWN_MGR_
TYPE
1717
The interface is unknown.
RPC_S_
UNKNOWN_IF
1718
There are no bindings.
RPC_S_NO_
BINDINGS
1719
There are no protocol sequences.
RPC_S_NO_
PROTSEQS
1720
The endpoint cannot be created.
RPC_S_CANT_
CREATE_
ENDPOINT
1721
Not enough resources are available to complete this operation.
RPC_S_OUT_OF_
RESOURCES
1722
The RPC server is unavailable.
RPC_S_SERVER_
UNAVAILABLE
1723
The RPC server is too busy to complete this operation.
RPC_S_SERVER_
TOO_BUSY
1724
The network options are invalid.
RPC_S_INVALID_
NETWORK_
OPTIONS
1725
There are no remote procedure calls active on this thread.
RPC_S_NO_CALL_
ACTIVE
1726
The remote procedure call failed.
RPC_S_CALL_
FAILED
1727
The remote procedure call failed and did not execute.
RPC_S_CALL_
FAILED_DNE
1728
A remote procedure call (RPC) protocol error occurred.
RPC_S_
PROTOCOL_
ERROR
1730
The transfer syntax is not supported by the RPC server.
RPC_S_
UNSUPPORTED_
TRANS_SYN
Automation Engine
91
1732
The universal unique identifier (UUID) type is not supported.
RPC_S_
UNSUPPORTED_
TYPE
1733
The tag is invalid.
RPC_S_INVALID_
TAG
1734
The array bounds are invalid.
RPC_S_INVALID_
BOUND
1735
The binding does not contain an entry name.
RPC_S_NO_
ENTRY_NAME
1736
The name syntax is invalid.
RPC_S_INVALID_
NAME_SYNTAX
1737
The name syntax is not supported.
RPC_S_
UNSUPPORTED_
NAME_SYNTAX
1739
No network address is available to use to construct a universal unique
identifier (UUID).
RPC_S_UUID_NO_
ADDRESS
1740
The endpoint is a duplicate.
RPC_S_
DUPLICATE_
ENDPOINT
1741
The authentication type is unknown.
RPC_S_
UNKNOWN_
AUTHN_TYPE
1742
The maximum number of calls is too small.
RPC_S_MAX_
CALLS_TOO_SMALL
1743
The string is too long.
RPC_S_STRING_
TOO_LONG
1744
The RPC protocol sequence was not found.
RPC_S_PROTSEQ_
NOT_FOUND
1745
The procedure number is out of range.
RPC_S_
PROCNUM_OUT_
OF_RANGE
1746
The binding does not contain any authentication information.
RPC_S_BINDING_
HAS_NO_AUTH
1747
The authentication service is unknown.
RPC_S_
UNKNOWN_
AUTHN_SERVICE
1748
The authentication level is unknown.
RPC_S_
UNKNOWN_
AUTHN_LEVEL
1749
The security context is invalid.
RPC_S_INVALID_
AUTH_IDENTITY
1750
The authorization service is unknown.
RPC_S_
UNKNOWN_
AUTHZ_SERVICE
1751
The entry is invalid.
EPT_S_INVALID_
ENTRY
92
Chapter 5 Codes d'erreur externes
1752
The server endpoint cannot perform the operation.
EPT_S_CANT_
PERFORM_OP
1753
There are no more endpoints available from the endpoint mapper.
EPT_S_NOT_
REGISTERED
1754
No interfaces have been exported.
RPC_S_NOTHING_
TO_EXPORT
1755
The entry name is incomplete.
RPC_S_
INCOMPLETE_
NAME
1756
The version option is invalid.
RPC_S_INVALID_
VERS_OPTION
1757
There are no more members.
RPC_S_NO_MORE_
MEMBERS
1758
There is nothing to unexport.
RPC_S_NOT_ALL_
OBJS_
UNEXPORTED
1759
The interface was not found.
RPC_S_
INTERFACE_NOT_
FOUND
1760
The entry already exists.
RPC_S_ENTRY_
ALREADY_EXISTS
1761
The entry is not found.
RPC_S_ENTRY_
NOT_FOUND
1762
The name service is unavailable.
RPC_S_NAME_
SERVICE_
UNAVAILABLE
1763
The network address family is invalid.
RPC_S_INVALID_
NAF_ID
1764
The requested operation is not supported.
RPC_S_CANNOT_
SUPPORT
1765
No security context is available to allow impersonation.
RPC_S_NO_
CONTEXT_
AVAILABLE
1766
An internal error occurred in a remote procedure call (RPC).
RPC_S_INTERNAL_
ERROR
1767
The RPC server attempted an integer division by zero.
RPC_S_ZERO_
DIVIDE
1768
An addressing error occurred in the RPC server.
RPC_S_ADDRESS_
ERROR
1769
A floating-point operation at the RPC server caused a division by zero.
RPC_S_FP_DIV_
ZERO
1770
A floating-point underflow occurred at the RPC server.
RPC_S_FP_
UNDERFLOW
1771
A floating-point overflow occurred at the RPC server.
RPC_S_FP_
OVERFLOW
Automation Engine
93
1772
The list of RPC servers available for the binding of auto handles has been RPC_X_NO_MORE_
exhausted.
ENTRIES
1773
Unable to open the character translation table file.
RPC_X_SS_CHAR_
TRANS_OPEN_FAIL
1774
The file containing the character translation table has fewer than 512
bytes.
RPC_X_SS_CHAR_
TRANS_SHORT_
FILE
1775
A null context handle was passed from the client to the host during a
remote procedure call.
RPC_X_SS_IN_
NULL_CONTEXT
1777
The context handle changed during a remote procedure call.
RPC_X_SS_
CONTEXT_
DAMAGED
1778
The binding handles passed to a remote procedure call do not match.
RPC_X_SS_
HANDLES_
MISMATCH
1779
The stub is unable to get the remote procedure call handle.
RPC_X_SS_
CANNOT_GET_
CALL_HANDLE
1780
A null reference pointer was passed to the stub.
RPC_X_NULL_REF_
POINTER
1781
The enumeration value is out of range.
RPC_X_ENUM_
VALUE_OUT_OF_
RANGE
1782
The byte count is too small.
RPC_X_BYTE_
COUNT_TOO_
SMALL
1783
The stub received bad data.
RPC_X_BAD_
STUB_DATA
1784
The supplied user buffer is not valid for the requested operation.
ERROR_INVALID_
USER_BUFFER
1785
The disk media is not recognized. It may not be formatted.
ERROR_
UNRECOGNIZED_
MEDIA
1786
The workstation does not have a trust secret.
ERROR_NO_
TRUST_LSA_
SECRET
1787
The SAM database on the Windows NT Server does not have a computer ERROR_NO_
account for this workstation trust relationship.
TRUST_SAM_
ACCOUNT
1788
The trust relationship between the primary domain and the trusted domain ERROR_TRUSTED_
failed.
DOMAIN_FAILURE
1789
The trust relationship between this workstation and the primary domain
failed.
ERROR_TRUSTED_
RELATIONSHIP_
FAILURE
1790
The network logon failed.
ERROR_TRUST_
FAILURE
94
Chapter 5 Codes d'erreur externes
1791
A remote procedure call is already in progress for this thread.
RPC_S_CALL_IN_
PROGRESS
1792
An attempt was made to logon, but the network logon service was not
started.
ERROR_
NETLOGON_NOT_
STARTED
1793
The user's account has expired.
ERROR_
ACCOUNT_
EXPIRED
1794
The redirector is in use and cannot be unloaded.
ERROR_
REDIRECTOR_
HAS_OPEN_
HANDLES
1795
The specified printer driver is already installed.
ERROR_PRINTER_
DRIVER_
ALREADY_
INSTALLED
1796
The specified port is unknown.
ERROR_
UNKNOWN_PORT
1797
The printer driver is unknown.
ERROR_
UNKNOWN_
PRINTER_DRIVER
1798
The print processor is unknown.
ERROR_
UNKNOWN_
PRINTPROCESSOR
1799
The specified separator file is invalid.
ERROR_INVALID_
SEPARATOR_FILE
1800
The specified priority is invalid.
ERROR_INVALID_
PRIORITY
1801
The printer name is invalid.
ERROR_INVALID_
PRINTER_NAME
1802
The printer already exists.
ERROR_PRINTER_
ALREADY_EXISTS
1803
The printer command is invalid.
ERROR_INVALID_
PRINTER_
COMMAND
1804
The specified datatype is invalid.
ERROR_INVALID_
DATATYPE
1805
The environment specified is invalid.
ERROR_INVALID_
ENVIRONMENT
1806
There are no more bindings.
RPC_S_NO_MORE_
BINDINGS
1807
The account used is an interdomain trust account. Use your global user
account or local user account to access this server.
ERROR_
NOLOGON_
INTERDOMAIN_
TRUST_ACCOUNT
Automation Engine
95
1808
The account used is a computer account. Use your global user account or ERROR_
local user account to access this server.
NOLOGON_
WORKSTATION_
TRUST_ACCOUNT
1809
The account used is a server trust account. Use your global user account ERROR_
or local user account to access this server.
NOLOGON_
SERVER_TRUST_
ACCOUNT
1810
The name or security ID (SID) of the domain specified is inconsistent with ERROR_DOMAIN_
the trust information for that domain.
TRUST_
INCONSISTENT
1811
The server is in use and cannot be unloaded.
ERROR_SERVER_
HAS_OPEN_
HANDLES
1812
The specified image file did not contain a resource section.
ERROR_
RESOURCE_DATA_
NOT_FOUND
1813
The specified resource type cannot be found in the image file.
ERROR_
RESOURCE_TYPE_
NOT_FOUND
1814
The specified resource name cannot be found in the image file.
ERROR_
RESOURCE_
NAME_NOT_
FOUND
1815
The specified resource language ID cannot be found in the image file.
ERROR_
RESOURCE_LANG_
NOT_FOUND
1816
Not enough quota is available to process this command.
ERROR_NOT_
ENOUGH_QUOTA
1817
No interfaces have been registered.
RPC_S_NO_
INTERFACES
1818
The remote procedure call was cancelled.
RPC_S_CALL_
CANCELLED
1819
The binding handle does not contain all required information.
RPC_S_BINDING_
INCOMPLETE
1820
A communications failure occurred during a remote procedure call.
RPC_S_COMM_
FAILURE
1821
The requested authentication level is not supported.
RPC_S_
UNSUPPORTED_
AUTHN_LEVEL
1822
No principal name registered.
RPC_S_NO_
PRINC_NAME
1823
The error specified is not a valid Windows RPC error code.
RPC_S_NOT_RPC_
ERROR
1824
A UUID that is valid only on this computer has been allocated.
RPC_S_UUID_
LOCAL_ONLY
96
Chapter 5 Codes d'erreur externes
1825
A security package specific error occurred.
RPC_S_SEC_PKG_
ERROR
1826
Thread is not canceled.
RPC_S_NOT_
CANCELLED
1827
Invalid operation on the encoding/decoding handle.
RPC_X_INVALID_
ES_ACTION
1828
Incompatible version of the serializing package.
RPC_X_WRONG_
ES_VERSION
1829
Incompatible version of the RPC stub.
RPC_X_WRONG_
STUB_VERSION
1830
The RPC pipe object is invalid or corrupted.
RPC_X_INVALID_
PIPE_OBJECT
1831
An invalid operation was attempted on an RPC pipe object.
RPC_X_WRONG_
PIPE_ORDER
1832
Unsupported RPC pipe version.
RPC_X_WRONG_
PIPE_VERSION
1898
The group member was not found.
RPC_S_GROUP_
MEMBER_NOT_
FOUND
1899
The endpoint mapper database entry could not be created.
EPT_S_CANT_
CREATE
1900
The object universal unique identifier (UUID) is the nil UUID.
RPC_S_INVALID_
OBJECT
1901
The specified time is invalid.
ERROR_INVALID_
TIME
1902
The specified form name is invalid.
ERROR_INVALID_
FORM_NAME
1903
The specified form size is invalid.
ERROR_INVALID_
FORM_SIZE
1904
The specified printer handle is already being waited on
ERROR_ALREADY_
WAITING
1905
The specified printer has been deleted.
ERROR_PRINTER_
DELETED
1906
The state of the printer is invalid.
ERROR_INVALID_
PRINTER_STATE
1907
The user must change his password before he logs on the first time.
ERROR_
PASSWORD_
MUST_CHANGE
1908
Could not find the domain controller for this domain.
ERROR_DOMAIN_
CONTROLLER_
NOT_FOUND
1909
The referenced account is currently locked out and may not be logged on
to.
ERROR_
ACCOUNT_
LOCKED_OUT
1910
The object exporter specified was not found.
OR_INVALID_OXID
1911
The object specified was not found.
OR_INVALID_OID
Automation Engine
97
1912
The object resolver set specified was not found.
OR_INVALID_SET
1913
Some data remains to be sent in the request buffer.
RPC_S_SEND_
INCOMPLETE
1914
Invalid asynchronous remote procedure call handle.
RPC_S_INVALID_
ASYNC_HANDLE
1915
Invalid asynchronous RPC call handle for this operation.
RPC_S_INVALID_
ASYNC_CALL
1916
The RPC pipe object has already been closed.
RPC_X_PIPE_
CLOSED
1917
The RPC call completed before all pipes were processed.
RPC_X_PIPE_
DISCIPLINE_
ERROR
1918
No more data is available from the RPC pipe.
RPC_X_PIPE_
EMPTY
1919
No site name is available for this machine.
ERROR_NO_
SITENAME
1920
The file can not be accessed by the system.
ERROR_CANT_
ACCESS_FILE
1921
The name of the file cannot be resolved by the system.
ERROR_CANT_
RESOLVE_
FILENAME
1922
The entry is not of the expected type.
RPC_S_ENTRY_
TYPE_MISMATCH
1923
Not all object UUIDs could be exported to the specified entry.
RPC_S_NOT_ALL_
OBJS_EXPORTED
1924
Interface could not be exported to the specified entry.
RPC_S_
INTERFACE_NOT_
EXPORTED
1925
The specified profile entry could not be added.
RPC_S_PROFILE_
NOT_ADDED
1926
The specified profile element could not be added.
RPC_S_PRF_ELT_
NOT_ADDED
1927
The specified profile element could not be removed.
RPC_S_PRF_ELT_
NOT_REMOVED
1928
The group element could not be added.
RPC_S_GRP_ELT_
NOT_ADDED
1929
The group element could not be removed. RPC_S_GRP_ELT_
NOT_REMOVED 5.5.3 Win32 - Codes d'erreur (2 000-5 999)
Le tableau suivant contient les messages d'erreur Win32.
Code
Description
Nom
2000
The pixel format is
invalid.
ERROR_INVALID_PIXEL_FORMAT
98
Chapter 5 Codes d'erreur externes
2001
The specified
driver is invalid.
ERROR_BAD_DRIVER
2002
The window style ERROR_INVALID_WINDOW_STYLE
or class attribute is
invalid for this
operation.
2003
The requested
metafile operation
is not supported.
ERROR_METAFILE_NOT_SUPPORTED
2004
The requested
transformation
operation is not
supported.
ERROR_TRANSFORM_NOT_SUPPORTED
2005
The requested
clipping operation
is not supported.
ERROR_CLIPPING_NOT_SUPPORTED
2010
The specified color ERROR_INVALID_CMM
management
module is invalid.
2011
The specified color ERROR_INVALID_PROFILE
profile is invalid.
2012
The specified tag
was not found.
ERROR_TAG_NOT_FOUND
2013
A required tag is
not present.
ERROR_TAG_NOT_PRESENT
2014
The specified tag is ERROR_DUPLICATE_TAG
already present.
2015
The specified color ERROR_PROFILE_NOT_ASSOCIATED_WITH_
profile is not
DEVICE
associated with
any device.
2016
The specified color ERROR_PROFILE_NOT_FOUND
profile was not
found.
2017
The specified color ERROR_INVALID_COLORSPACE
space is invalid.
2018
Image Color
ERROR_ICM_NOT_ENABLED
Management is not
enabled.
2019
There was an error ERROR_DELETING_ICM_XFORM
while deleting the
color transform.
2020
The specified color ERROR_INVALID_TRANSFORM
transform is
invalid.
Automation Engine
2021
The specified
ERROR_COLORSPACE_MISMATCH
transform does not
match the bitmap's
color space.
2022
The specified
ERROR_INVALID_COLORINDEX
named color index
is not present in the
profile.
2108
The network
ERROR_CONNECTED_OTHER_PASSWORD
connection was
made
successfully, but
the user had to be
prompted for a
password other
than the one
originally specified.
2202
The specified
username is
invalid.
ERROR_BAD_USERNAME
2250
This network
connection does
not exist.
ERROR_NOT_CONNECTED
2401
This network
connection has
files open or
requests pending.
ERROR_OPEN_FILES
2402
Active connections ERROR_ACTIVE_CONNECTIONS
still exist.
2404
The device is in
use by an active
process and
cannot be
disconnected.
ERROR_DEVICE_IN_USE
3000
The specified print
monitor is
unknown.
ERROR_UNKNOWN_PRINT_MONITOR
3001
The specified
printer driver is
currently in use.
ERROR_PRINTER_DRIVER_IN_USE
3002
The spool file was
not found.
ERROR_SPOOL_FILE_NOT_FOUND
3003
A StartDocPrinter
call was not
issued.
ERROR_SPL_NO_STARTDOC
3004
An AddJob call
was not issued.
ERROR_SPL_NO_ADDJOB
99
100
Chapter 5 Codes d'erreur externes
3005
The specified print
processor has
already been
installed.
ERROR_PRINT_PROCESSOR_ALREADY_INSTALLED
3006
The specified print
monitor has
already been
installed.
ERROR_PRINT_MONITOR_ALREADY_INSTALLED
3007
The specified print
monitor does not
have the required
functions.
ERROR_INVALID_PRINT_MONITOR
3008
The specified print ERROR_PRINT_MONITOR_IN_USE
monitor is currently
in use.
3009
The requested
ERROR_PRINTER_HAS_JOBS_QUEUED
operation is not
allowed when there
are jobs queued to
the printer.
3010
The requested
operation is
successful.
Changes will not
be effective until
the system is
rebooted.
ERROR_SUCCESS_REBOOT_REQUIRED
3011
The requested
operation is
successful.
Changes will not
be effective until
the service is
restarted.
ERROR_SUCCESS_RESTART_REQUIRED
3012
No printers were
found.
ERROR_PRINTER_NOT_FOUND
4000
WINS encountered ERROR_WINS_INTERNAL
an error while
processing the
command.
4001
The local WINS
ERROR_CAN_NOT_DEL_LOCAL_WINS
can not be deleted.
4002
The importation
from the file failed.
ERROR_STATIC_INIT
4003
The backup failed.
Was a full backup
done before?
ERROR_INC_BACKUP
Automation Engine
4004
The backup failed. ERROR_FULL_BACKUP
Check the
directory to which
you are backing the
database.
4005
The name does not ERROR_REC_NON_EXISTENT
exist in the WINS
database.
4006
Replication with a
nonconfigured
partner is not
allowed.
4100
The DHCP client
ERROR_DHCP_ADDRESS_CONFLICT
has obtained an IP
address that is
already in use on
the network. The
local interface will
be disabled until
the DHCP client
can obtain a new
address.
4200
The GUID passed ERROR_WMI_GUID_NOT_FOUND
was not recognized
as valid by a WMI
data provider.
4201
The instance name ERROR_WMI_INSTANCE_NOT_FOUND
passed was not
recognized as valid
by a WMI data
provider.
4202
The data item ID
ERROR_WMI_ITEMID_NOT_FOUND
passed was not
recognized as valid
by a WMI data
provider.
4203
The WMI request
could not be
completed and
should be retried.
ERROR_WMI_TRY_AGAIN
4204
The WMI data
provider could not
be located.
ERROR_WMI_DP_NOT_FOUND
4205
The WMI data
ERROR_WMI_UNRESOLVED_INSTANCE_REF
provider references
an instance set
that has not been
registered.
ERROR_RPL_NOT_ALLOWED
101
102
Chapter 5 Codes d'erreur externes
4206
The WMI data
block or event
notification has
already been
enabled.
ERROR_WMI_ALREADY_ENABLED
4207
The WMI data
block is no longer
available.
ERROR_WMI_GUID_DISCONNECTED
4208
The WMI data
service is not
available.
ERROR_WMI_SERVER_UNAVAILABLE
4209
The WMI data
provider failed to
carry out the
request.
ERROR_WMI_DP_FAILED
4210
The WMI MOF
information is not
valid.
ERROR_WMI_INVALID_MOF
4211
The WMI
registration
information is not
valid.
ERROR_WMI_INVALID_REGINFO
4212
The WMI data
block or event
notification has
already been
disabled.
ERROR_WMI_ALREADY_DISABLED
4213
The WMI data item ERROR_WMI_READ_ONLY
or data block is
read only.
4214
The WMI data item ERROR_WMI_SET_FAILURE
or data block could
not be changed.
4300
The media
identifier does not
represent a valid
medium.
ERROR_INVALID_MEDIA
4301
The library
identifier does not
represent a valid
library.
ERROR_INVALID_LIBRARY
4302
The media pool
identifier does not
represent a valid
media pool.
ERROR_INVALID_MEDIA_POOL
Automation Engine
4303
The drive and
ERROR_DRIVE_MEDIA_MISMATCH
medium are not
compatible or exist
in different
libraries.
4304
The medium
ERROR_MEDIA_OFFLINE
currently exists in
an offline library
and must be online
to perform this
operation.
4305
The operation
cannot be
performed on an
offline library.
ERROR_LIBRARY_OFFLINE
4306
The library, drive,
or media pool is
empty.
ERROR_EMPTY
4307
The library, drive,
ERROR_NOT_EMPTY
or media pool must
be empty to
perform this
operation.
4308
No media is
currently available
in this media pool
or library.
4309
A resource required ERROR_RESOURCE_DISABLED
for this operation is
disabled.
4310
The media
identifier does not
represent a valid
cleaner.
4311
The drive cannot
ERROR_UNABLE_TO_CLEAN
be cleaned or does
not support
cleaning.
4312
The object
identifier does not
represent a valid
object.
4313
Unable to read
ERROR_DATABASE_FAILURE
from or write to the
database.
4314
The database is
full.
ERROR_MEDIA_UNAVAILABLE
ERROR_INVALID_CLEANER
ERROR_OBJECT_NOT_FOUND
ERROR_DATABASE_FULL
103
104
Chapter 5 Codes d'erreur externes
4315
The medium is not ERROR_MEDIA_INCOMPATIBLE
compatible with the
device or media
pool.
4316
The resource
required for this
operation does not
exist.
ERROR_RESOURCE_NOT_PRESENT
4317
The operation
identifier is not
valid.
ERROR_INVALID_OPERATION
4318
The media is not
mounted or ready
for use.
ERROR_MEDIA_NOT_AVAILABLE
4319
The device is not
ready for use.
ERROR_DEVICE_NOT_AVAILABLE
4320
The operator or
administrator has
refused the
request.
ERROR_REQUEST_REFUSED
4321
The drive identifier ERROR_INVALID_DRIVE_OBJECT
does not represent
a valid drive.
4322
Library is full. No
ERROR_LIBRARY_FULL
slot is available for
use.
4323
The transport
cannot access the
medium.
ERROR_MEDIUM_NOT_ACCESSIBLE
4324
Unable to load the
medium into the
drive.
ERROR_UNABLE_TO_LOAD_MEDIUM
4325
Unable to retrieve
status about the
drive.
ERROR_UNABLE_TO_INVENTORY_DRIVE
4326
Unable to retrieve
status about the
slot.
ERROR_UNABLE_TO_INVENTORY_SLOT
4327
Unable to retrieve
status about the
transport.
ERROR_UNABLE_TO_INVENTORY_TRANSPORT
4328
Cannot use the
ERROR_TRANSPORT_FULL
transport because
it is already in use.
4329
Unable to open or
close the
inject/eject port.
ERROR_CONTROLLING_IEPORT
Automation Engine
4330
Unable to eject the ERROR_UNABLE_TO_EJECT_MOUNTED_MEDIA
media because it is
in a drive.
4331
A cleaner slot is
already reserved.
ERROR_CLEANER_SLOT_SET
4332
A cleaner slot is
not reserved.
ERROR_CLEANER_SLOT_NOT_SET
4333
The cleaner
cartridge has
performed the
maximum number
of drive cleanings.
ERROR_CLEANER_CARTRIDGE_SPENT
4334
Unexpected onmedium identifier.
ERROR_UNEXPECTED_OMID
4335
The last remaining ERROR_CANT_DELETE_LAST_ITEM
item in this group or
resource cannot be
deleted.
4336
The message
provided exceeds
the maximum size
allowed for this
parameter.
4337
The volume
ERROR_VOLUME_CONTAINS_SYS_FILES
contains system or
paging files.
4338
The media type
ERROR_INDIGENOUS_TYPE
cannot be removed
from this library
since at least one
drive in the library
reports it can
support this media
type.
4339
This offline media ERROR_NO_SUPPORTING_DRIVES
cannot be mounted
on this system
since no enabled
drives are present
which can be used.
4350
The remote storage ERROR_FILE_OFFLINE
service was not
able to recall the
file.
4351
The remote storage ERROR_REMOTE_STORAGE_NOT_ACTIVE
service is not
operational at this
time.
ERROR_MESSAGE_EXCEEDS_MAX_SIZE
105
106
Chapter 5 Codes d'erreur externes
4352
The remote storage ERROR_REMOTE_STORAGE_MEDIA_ERROR
service
encountered a
media error.
4390
The file or directory ERROR_NOT_A_REPARSE_POINT
is not a reparse
point.
4391
The reparse point
ERROR_REPARSE_ATTRIBUTE_CONFLICT
attribute cannot be
set because it
conflicts with an
existing attribute.
4392
The data present in ERROR_INVALID_REPARSE_DATA
the reparse point
buffer is invalid.
4393
The tag present in
the reparse point
buffer is invalid.
4394
There is a
ERROR_REPARSE_TAG_MISMATCH
mismatch between
the tag specified in
the request and the
tag present in the
reparse point.
5001
The cluster
ERROR_DEPENDENT_RESOURCE_EXISTS
resource cannot be
moved to another
group because
other resources are
dependent on it.
5002
The cluster
resource
dependency
cannot be found.
5003
The cluster
ERROR_DEPENDENCY_ALREADY_EXISTS
resource cannot be
made dependent
on the specified
resource because
it is already
dependent.
5004
The cluster
resource is not
online.
ERROR_RESOURCE_NOT_ONLINE
5005
A cluster node is
not available for
this operation.
ERROR_HOST_NODE_NOT_AVAILABLE
ERROR_REPARSE_TAG_INVALID
ERROR_DEPENDENCY_NOT_FOUND
Automation Engine
5006
The cluster
resource is not
available.
ERROR_RESOURCE_NOT_AVAILABLE
5007
The cluster
resource could not
be found.
ERROR_RESOURCE_NOT_FOUND
5008
The cluster is being ERROR_SHUTDOWN_CLUSTER
shut down.
5009
A cluster node
cannot be evicted
from the cluster
while it is online.
ERROR_CANT_EVICT_ACTIVE_NODE
5010
The object already
exists.
ERROR_OBJECT_ALREADY_EXISTS
5011
The object is
already in the list.
ERROR_OBJECT_IN_LIST
5012
The cluster group
is not available for
any new requests.
ERROR_GROUP_NOT_AVAILABLE
5013
The cluster group ERROR_GROUP_NOT_FOUND
could not be found.
5014
The operation
ERROR_GROUP_NOT_ONLINE
could not be
completed
because the
cluster group is not
online.
5015
The cluster node is ERROR_HOST_NODE_NOT_RESOURCE_OWNER
not the owner of
the resource.
5016
The cluster node is ERROR_HOST_NODE_NOT_GROUP_OWNER
not the owner of
the group.
5017
The cluster
resource could not
be created in the
specified resource
monitor.
ERROR_RESMON_CREATE_FAILED
5018
The cluster
resource could not
be brought online
by the resource
monitor.
ERROR_RESMON_ONLINE_FAILED
107
108
Chapter 5 Codes d'erreur externes
5019
The operation
could not be
completed
because the
cluster resource is
online.
ERROR_RESOURCE_ONLINE
5020
The cluster
resource could not
be deleted or
brought offline
because it is the
quorum resource.
ERROR_QUORUM_RESOURCE
5021
The cluster could
ERROR_NOT_QUORUM_CAPABLE
not make the
specified resource
a quorum resource
because it is not
capable of being a
quorum resource.
5022
The cluster
software is
shutting down.
5023
The group or
ERROR_INVALID_STATE
resource is not in
the correct state to
perform the
requested
operation.
5024
The properties
ERROR_RESOURCE_PROPERTIES_STORED
were stored but not
all changes will
take effect until the
next time the
resource is brought
online.
5025
The cluster could
ERROR_NOT_QUORUM_CLASS
not make the
specified resource
a quorum resource
because it does not
belong to a shared
storage class.
5026
The cluster
resource could not
be deleted since it
is a core resource.
ERROR_CORE_RESOURCE
5027
The quorum
resource failed to
come online.
ERROR_QUORUM_RESOURCE_ONLINE_FAILED
ERROR_CLUSTER_SHUTTING_DOWN
Automation Engine
5028
The quorum log
ERROR_QUORUMLOG_OPEN_FAILED
could not be
created or mounted
successfully.
5029
The cluster log is
corrupt.
5030
The record could
ERROR_CLUSTERLOG_RECORD_EXCEEDS_
not be written to
MAXSIZE
the cluster log
since it exceeds
the maximum size.
5031
The cluster log
exceeds its
maximum size.
5032
No checkpoint
ERROR_CLUSTERLOG_CHKPOINT_NOT_FOUND
record was found in
the cluster log.
5033
The minimum
ERROR_CLUSTERLOG_NOT_ENOUGH_SPACE
required disk space
needed for logging
is not available.
5035
A cluster network
is not available for
this operation.
ERROR_NETWORK_NOT_AVAILABLE
5036
A cluster node is
not available for
this operation.
ERROR_NODE_NOT_AVAILABLE
5037
All cluster nodes
must be running to
perform this
operation.
ERROR_ALL_NODES_NOT_AVAILABLE
5038
A cluster resource
failed.
ERROR_RESOURCE_FAILED
5039
The cluster node is ERROR_CLUSTER_INVALID_NODE
not valid.
5040
The cluster node
already exists.
ERROR_CLUSTER_NODE_EXISTS
5041
A node is in the
process of joining
the cluster.
ERROR_CLUSTER_JOIN_IN_PROGRESS
5042
The cluster node
was not found.
ERROR_CLUSTER_NODE_NOT_FOUND
5043
The cluster local
node information
was not found.
ERROR_CLUSTER_LOCAL_NODE_NOT_FOUND
ERROR_CLUSTERLOG_CORRUPT
ERROR_CLUSTERLOG_EXCEEDS_MAXSIZE
109
110
Chapter 5 Codes d'erreur externes
5044
The cluster
network already
exists.
ERROR_CLUSTER_NETWORK_EXISTS
5045
The cluster
network was not
found.
ERROR_CLUSTER_NETWORK_NOT_FOUND
5046
The cluster
network interface
already exists.
ERROR_CLUSTER_NETINTERFACE_EXISTS
5047
The cluster
network interface
was not found.
ERROR_CLUSTER_NETINTERFACE_NOT_FOUND
5048
The cluster request ERROR_CLUSTER_INVALID_REQUEST
is not valid for this
object.
5049
The cluster
ERROR_CLUSTER_INVALID_NETWORK_PROVIDER
network provider is
not valid.
5050
The cluster node is ERROR_CLUSTER_NODE_DOWN
down.
5051
The cluster node is ERROR_CLUSTER_NODE_UNREACHABLE
not reachable.
5052
The cluster node is ERROR_CLUSTER_NODE_NOT_MEMBER
not a member of
the cluster.
5053
A cluster join
operation is not in
progress.
ERROR_CLUSTER_JOIN_NOT_IN_PROGRESS
5054
The cluster
network is not
valid.
ERROR_CLUSTER_INVALID_NETWORK
5056
The cluster node is ERROR_CLUSTER_NODE_UP
up.
5057
The cluster IP
address is already
in use.
5058
The cluster node is ERROR_CLUSTER_NODE_NOT_PAUSED
not paused.
5059
No cluster security ERROR_CLUSTER_NO_SECURITY_CONTEXT
context is
available.
5060
The cluster
network is not
configured for
internal cluster
communication.
ERROR_CLUSTER_IPADDR_IN_USE
ERROR_CLUSTER_NETWORK_NOT_INTERNAL
Automation Engine
111
5061
The cluster node is ERROR_CLUSTER_NODE_ALREADY_UP
already up.
5062
The cluster node is ERROR_CLUSTER_NODE_ALREADY_DOWN
already down.
5063
The cluster
network is already
online.
ERROR_CLUSTER_NETWORK_ALREADY_ONLINE
5064
The cluster
network is already
offline.
ERROR_CLUSTER_NETWORK_ALREADY_OFFLINE
5065
The cluster node is ERROR_CLUSTER_NODE_ALREADY_MEMBER
already a member
of the cluster.
5066
The cluster
ERROR_CLUSTER_LAST_INTERNAL_NETWORK
network is the only
one configured for
internal cluster
communication
between two or
more active cluster
nodes. The internal
communication
capability cannot
be removed from
the network.
5067
One or more
cluster resources
depend on the
network to provide
service to clients.
The client access
capability cannot
be removed from
the network.
5068
This operation
ERROR_INVALID_OPERATION_ON_QUORUM
cannot be
performed on the
cluster resource as
it the quorum
resource. You may
not bring the
quorum resource
offline or modify its
possible owners
list.
5069
The cluster quorum ERROR_DEPENDENCY_NOT_ALLOWED
resource is not
allowed to have
any dependencies.
ERROR_CLUSTER_NETWORK_HAS_DEPENDENTS
112
Chapter 5 Codes d'erreur externes
5070
The cluster node is ERROR_CLUSTER_NODE_PAUSED
paused.
5071
The cluster
ERROR_NODE_CANT_HOST_RESOURCE
resource cannot be
brought online. The
owner node cannot
run this resource.
5072
The cluster node is ERROR_CLUSTER_NODE_NOT_READY
not ready to
perform the
requested
operation.
5073
The cluster node is ERROR_CLUSTER_NODE_SHUTTING_DOWN
shutting down.
5074
The cluster join
operation was
aborted.
5075
The cluster join
ERROR_CLUSTER_INCOMPATIBLE_VERSIONS
operation failed due
to incompatible
software versions
between the joining
node and its
sponsor.
5076
This resource
ERROR_CLUSTER_MAXNUM_OF_RESOURCES_
cannot be created EXCEEDED
because the
cluster has
reached the limit on
the number of
resources it can
monitor.
5077
The system
ERROR_CLUSTER_SYSTEM_CONFIG_CHANGED
configuration
changed during the
cluster join or form
operation. The join
or form operation
was aborted.
5078
The specified
resource type was
not found.
ERROR_CLUSTER_JOIN_ABORTED
ERROR_CLUSTER_RESOURCE_TYPE_NOT_FOUND
Automation Engine
5079
The specified node ERROR_CLUSTER_RESTYPE_NOT_SUPPORTED
does not support a
resource of this
type. This may be
due to version
inconsistencies or
due to the absence
of the resource
DLL on this node.
5080
The specified
ERROR_CLUSTER_RESNAME_NOT_FOUND
resource name is
supported by this
resource DLL. This
may be due to a
bad (or changed)
name supplied to
the resource DLL.
5081
No authentication
package could be
registered with the
RPC server.
5082
You cannot bring
ERROR_CLUSTER_OWNER_NOT_IN_PREFLIST
the group online
because the owner
of the group is not
in the preferred list
for the group. To
change the owner
node for the group,
move the group.
5083
The join operation
failed because the
cluster database
sequence number
has changed or is
incompatible with
the locker node.
This may happen
during a join
operation if the
cluster database
was changing
during the join.
ERROR_CLUSTER_NO_RPC_PACKAGES_
REGISTERED
ERROR_CLUSTER_DATABASE_SEQMISMATCH
113
114
Chapter 5 Codes d'erreur externes
5084
The resource
ERROR_RESMON_INVALID_STATE
monitor will not
allow the fail
operation to be
performed while
the resource is in
its current state.
This may happen if
the resource is in a
pending state.
5.5.4 Win32 - Codes d'erreur (6 000-11 999)
Le tableau suivant contient les messages d'erreur Win32.
Code
Description
Nom
6000
The specified file could not be encrypted.
ERROR_ENCRYPTION_
FAILED
6001
The specified file could not be decrypted.
ERROR_DECRYPTION_
FAILED
6002
The specified file is encrypted and the user does not have the ERROR_FILE_ENCRYPTED
ability to decrypt it.
6003
There is no encryption recovery policy configured for this
system.
ERROR_NO_RECOVERY_
POLICY
6004
The required encryption driver is not loaded for this system.
ERROR_NO_EFS
6005
The file was encrypted with a different encryption driver than
is currently loaded.
ERROR_WRONG_EFS
6006
There are no EFS keys defined for the user.
ERROR_NO_USER_KEYS
6007
The specified file is not encrypted.
ERROR_FILE_NOT_
ENCRYPTED
6008
The specified file is not in the defined EFS export format.
ERROR_NOT_EXPORT_
FORMAT
6009
The specified file is read only.
ERROR_FILE_READ_ONLY
6118
The list of servers for this workgroup is not currently available ERROR_NO_BROWSER_
SERVERS_FOUND
7001
The specified session name is invalid.
ERROR_CTX_WINSTATION_
NAME_INVALID
7002
The specified protocol driver is invalid.
ERROR_CTX_INVALID_PD
7003
The specified protocol driver was not found in the system
path.
ERROR_CTX_PD_NOT_
FOUND
7004
The specified terminal connection driver was not found in the
system path.
ERROR_CTX_WD_NOT_
FOUND
7005
A registry key for event logging could not be created for this
session.
ERROR_CTX_CANNOT_
MAKE_EVENTLOG_ENTRY
Automation Engine
115
7006
A service with the same name already exists on the system.
ERROR_CTX_SERVICE_
NAME_COLLISION
7007
A close operation is pending on the session.
ERROR_CTX_CLOSE_
PENDING
7008
There are no free output buffers available.
ERROR_CTX_NO_OUTBUF
7009
The MODEM.INF file was not found.
ERROR_CTX_MODEM_INF_
NOT_FOUND
7010
The modem name was not found in MODEM.INF.
ERROR_CTX_INVALID_
MODEMNAME
7011
The modem did not accept the command sent to it. Verify
that the configured modem name matches the attached
modem.
ERROR_CTX_MODEM_
RESPONSE_ERROR
7012
The modem did not respond to the command sent to it. Verify
that the modem is properly cabled and powered on.
ERROR_CTX_MODEM_
RESPONSE_TIMEOUT
7013
Carrier detect has failed or carrier has been dropped due to
disconnect.
ERROR_CTX_MODEM_
RESPONSE_NO_CARRIER
7014
Dial tone not detected within the required time. Verify that the ERROR_CTX_MODEM_
phone cable is properly attached and functional.
RESPONSE_NO_DIALTONE
7015
Busy signal detected at remote site on callback.
ERROR_CTX_MODEM_
RESPONSE_BUSY
7016
Voice detected at remote site on callback.
ERROR_CTX_MODEM_
RESPONSE_VOICE
7017
Transport driver error
ERROR_CTX_TD_ERROR
7022
The specified session cannot be found.
ERROR_CTX_WINSTATION_
NOT_FOUND
7023
The specified session name is already in use.
ERROR_CTX_WINSTATION_
ALREADY_EXISTS
7024
The requested operation cannot be completed because the
terminal connection is currently busy processing a connect,
disconnect, reset, or delete operation.
ERROR_CTX_WINSTATION_
BUSY
7025
An attempt has been made to connect to a session whose
video mode is not supported by the current client.
ERROR_CTX_BAD_VIDEO_
MODE
7035
The application attempted to enable DOS graphics mode.
DOS graphics mode is not supported.
ERROR_CTX_GRAPHICS_
INVALID
7037
Your interactive logon privilege has been disabled. Please
contact your administrator.
ERROR_CTX_LOGON_
DISABLED
7038
The requested operation can be performed only on the
system console. This is most often the result of a driver or
system DLL requiring direct console access.
ERROR_CTX_NOT_
CONSOLE
7040
The client failed to respond to the server connect message.
ERROR_CTX_CLIENT_
QUERY_TIMEOUT
7041
Disconnecting the console session is not supported.
ERROR_CTX_CONSOLE_
DISCONNECT
7042
Reconnecting a disconnected session to the console is not
supported.
ERROR_CTX_CONSOLE_
CONNECT
116
Chapter 5 Codes d'erreur externes
7044
The request to shadow another session was denied.
ERROR_CTX_SHADOW_
DENIED
7045
The requested session access is denied.
ERROR_CTX_WINSTATION_
ACCESS_DENIED
7049
The specified terminal connection driver is invalid.
ERROR_CTX_INVALID_WD
7050
The requested session cannot be shadowed. This may be
because the session is disconnected or does not currently
have a user logged on. Also, you cannot shadow a session
from the system console or shadow the system console.
ERROR_CTX_SHADOW_
INVALID
7051
The requested session is not configured to allow shadowing.
ERROR_CTX_SHADOW_
DISABLED
7052
Your request to connect to this Terminal Server has been
rejected. Your Terminal Server client license number is
currently being used by another user. Please call your
system administrator to obtain a new copy of the Terminal
Server client with a valid, unique license number.
ERROR_CTX_CLIENT_
LICENSE_IN_USE
7053
Your request to connect to this Terminal Server has been
rejected. Your Terminal Server client license number has not
been entered for this copy of the Terminal Server client.
Please call your system administrator for help in entering a
valid, unique license number for this Terminal Server client.
ERROR_CTX_CLIENT_
LICENSE_NOT_SET
7054
The system has reached its licensed logon limit. Please try
again later.
ERROR_CTX_LICENSE_
NOT_AVAILABLE
7055
The client you are using is not licensed to use this system.
Your logon request is denied.
ERROR_CTX_LICENSE_
CLIENT_INVALID
7056
The system license has expired. Your logon request is
denied.
ERROR_CTX_LICENSE_
EXPIRED
8001
The file replication service API was called incorrectly.
FRS_ERR_INVALID_API_
SEQUENCE
8002
The file replication service cannot be started.
FRS_ERR_STARTING_
SERVICE
8003
The file replication service cannot be stopped.
FRS_ERR_STOPPING_
SERVICE
8004
The file replication service API terminated the request.
FRS_ERR_INTERNAL_API
8005
The file replication service terminated the request.
FRS_ERR_INTERNAL
8006
The file replication service cannot be contacted.
FRS_ERR_SERVICE_COMM
8007
The file replication service cannot satisfy the request
because the user is not a member of the Administrators
group.
FRS_ERR_INSUFFICIENT_
PRIV
8008
The file replication service cannot satisfy the request
because authenticated RPC is not available.
FRS_ERR_
AUTHENTICATION
8009
The file replication service cannot satisfy the request
because the user is not a member of Administrators group on
the domain controller.
FRS_ERR_PARENT_
INSUFFICIENT_PRIV
Automation Engine
117
8010
The file replication service cannot satisfy the request
because authenticated RPC is not available on the domain
controller.
FRS_ERR_PARENT_
AUTHENTICATION
8011
The file replication service cannot communicate with the file
replication service on the domain controller.
FRS_ERR_CHILD_TO_
PARENT_COMM
8012
The file replication service on the domain controller cannot
communicate with the file replication service on this
computer.
FRS_ERR_PARENT_TO_
CHILD_COMM
8013
The file replication service cannot populate the system
volume because of an internal error.
FRS_ERR_SYSVOL_
POPULATE
8014
The file replication service cannot populate the system
volume because of an internal timeout.
FRS_ERR_SYSVOL_
POPULATE_TIMEOUT
8015
The file replication service cannot process the request. The
system volume is busy with a previous request.
FRS_ERR_SYSVOL_IS_
BUSY
8016
The file replication service cannot stop replicating the system FRS_ERR_SYSVOL_
volume because of an internal error.
DEMOTE
8017
The file replication service detected an invalid parameter.
FRS_ERR_INVALID_
SERVICE_PARAMETER
8200
An error occurred while installing the Windows NT directory
service. For more information, see the event log.
ERROR_DS_NOT_
INSTALLED
8201
The directory service evaluated group memberships locally.
ERROR_DS_MEMBERSHIP_
EVALUATED_LOCALLY
8202
The specified directory service attribute or value does not
exist.
ERROR_DS_NO_
ATTRIBUTE_OR_VALUE
8203
The attribute syntax specified to the directory service is
invalid.
ERROR_DS_INVALID_
ATTRIBUTE_SYNTAX
8204
The attribute type specified to the directory service is not
defined.
ERROR_DS_ATTRIBUTE_
TYPE_UNDEFINED
8205
The specified directory service attribute or value already
exists.
ERROR_DS_ATTRIBUTE_
OR_VALUE_EXISTS
8206
The directory service is busy.
ERROR_DS_BUSY
8207
The directory service is unavailable.
ERROR_DS_UNAVAILABLE
8208
The directory service was unable to allocate a relative
identifier.
ERROR_DS_NO_RIDS_
ALLOCATED
8209
The directory service has exhausted the pool of relative
identifiers.
ERROR_DS_NO_MORE_
RIDS
8210
The requested operation could not be performed because the
directory service is not the master for that type of operation.
ERROR_DS_INCORRECT_
ROLE_OWNER
8211
The directory service was unable to initialize the subsystem
that allocates relative identifiers.
ERROR_DS_RIDMGR_INIT_
ERROR
8212
The requested operation did not satisfy one or more
constraints associated with the class of the object.
ERROR_DS_OBJ_CLASS_
VIOLATION
8213
The directory service can perform the requested operation
only on a leaf object.
ERROR_DS_CANT_ON_
NON_LEAF
118
Chapter 5 Codes d'erreur externes
8214
The directory service cannot perform the requested operation
on the RDN attribute of an object.
ERROR_DS_CANT_ON_RDN
8215
The directory service detected an attempt to modify the
object class of an object.
ERROR_DS_CANT_MOD_
OBJ_CLASS
8216
The requested cross-domain move operation could not be
performed.
ERROR_DS_CROSS_DOM_
MOVE_ERROR
8217
Unable to contact the global catalog server.
ERROR_DS_GC_NOT_
AVAILABLE
8218
The policy object is shared and can only be modified at the
root.
ERROR_SHARED_POLICY
8219
The policy object does not exist.
ERROR_POLICY_OBJECT_
NOT_FOUND
8220
The requested policy information is only in the directory
service.
ERROR_POLICY_ONLY_IN_
DS
8221
A domain controller promotion is currently active.
ERROR_PROMOTION_
ACTIVE
8222
A domain controller promotion is not currently active
ERROR_NO_PROMOTION_
ACTIVE
8224
An operations error occurred.
ERROR_DS_OPERATIONS_
ERROR
8225
A protocol error occurred.
ERROR_DS_PROTOCOL_
ERROR
8226
The time limit for this request was exceeded.
ERROR_DS_TIMELIMIT_
EXCEEDED
8227
The size limit for this request was exceeded.
ERROR_DS_SIZELIMIT_
EXCEEDED
8228
The administrative limit for this request was exceeded.
ERROR_DS_ADMIN_LIMIT_
EXCEEDED
8229
The compare response was false.
ERROR_DS_COMPARE_
FALSE
8230
The compare response was true.
ERROR_DS_COMPARE_
TRUE
8231
The requested authentication method is not supported by the
server.
ERROR_DS_AUTH_
METHOD_NOT_SUPPORTED
8232
A more secure authentication method is required for this
server.
ERROR_DS_STRONG_
AUTH_REQUIRED
8233
Inappropriate authentication.
ERROR_DS_
INAPPROPRIATE_AUTH
8234
The authentication mechanism is unknown.
ERROR_DS_AUTH_
UNKNOWN
8235
A referral was returned from the server.
ERROR_DS_REFERRAL
8236
The server does not support the requested critical extension.
ERROR_DS_UNAVAILABLE_
CRIT_EXTENSION
Automation Engine
119
8237
This request requires a secure connection.
ERROR_DS_
CONFIDENTIALITY_
REQUIRED
8238
Inappropriate matching.
ERROR_DS_
INAPPROPRIATE_
MATCHING
8239
A constraint violation occurred.
ERROR_DS_CONSTRAINT_
VIOLATION
8240
There is no such object on the server.
ERROR_DS_NO_SUCH_
OBJECT
8241
There is an alias problem.
ERROR_DS_ALIAS_
PROBLEM
8242
An invalid dn syntax has been specified.
ERROR_DS_INVALID_DN_
SYNTAX
8243
The object is a leaf object.
ERROR_DS_IS_LEAF
8244
There is an alias dereferencing problem.
ERROR_DS_ALIAS_DEREF_
PROBLEM
8245
The server is unwilling to process the request.
ERROR_DS_UNWILLING_
TO_PERFORM
8246
A loop has been detected.
ERROR_DS_LOOP_DETECT
8247
There is a naming violation.
ERROR_DS_NAMING_
VIOLATION
8248
The result set is too large.
ERROR_DS_OBJECT_
RESULTS_TOO_LARGE
8249
The operation affects multiple DSAs
ERROR_DS_AFFECTS_
MULTIPLE_DSAS
8250
The server is not operational.
ERROR_DS_SERVER_
DOWN
8251
A local error has occurred.
ERROR_DS_LOCAL_ERROR
8252
An encoding error has occurred.
ERROR_DS_ENCODING_
ERROR
8253
A decoding error has occurred.
ERROR_DS_DECODING_
ERROR
8254
The search filter cannot be recognized.
ERROR_DS_FILTER_
UNKNOWN
8255
One or more parameters are illegal.
ERROR_DS_PARAM_
ERROR
8256
The specified method is not supported.
ERROR_DS_NOT_
SUPPORTED
8257
No results were returned.
ERROR_DS_NO_RESULTS_
RETURNED
8258
The specified control is not supported by the server.
ERROR_DS_CONTROL_
NOT_FOUND
8259
A referral loop was detected by the client.
ERROR_DS_CLIENT_LOOP
120
Chapter 5 Codes d'erreur externes
8260
The preset referral limit was exceeded.
ERROR_DS_REFERRAL_
LIMIT_EXCEEDED
8301
The root object must be the head of a naming context. The
root object cannot have an instantiated parent.
ERROR_DS_ROOT_MUST_
BE_NC
8302
The add replica operation cannot be performed. The naming
context must be writable in order to create the replica.
ERROR_DS_ADD_REPLICA_
INHIBITED
8303
A reference to an attribute that is not defined in the schema
occurred.
ERROR_DS_ATT_NOT_DEF_
IN_SCHEMA
8304
The maximum size of an object has been exceeded.
ERROR_DS_MAX_OBJ_
SIZE_EXCEEDED
8305
An attempt was made to add an object to the directory with a
name that is already in use.
ERROR_DS_OBJ_STRING_
NAME_EXISTS
8306
An attempt was made to add an object of a class that does
not have an RDN defined in the schema.
ERROR_DS_NO_RDN_
DEFINED_IN_SCHEMA
8307
An attempt was made to add an object using an RDN that is
not the RDN defined in the schema.
ERROR_DS_RDN_DOESNT_
MATCH_SCHEMA
8308
None of the requested attributes were found on the objects.
ERROR_DS_NO_
REQUESTED_ATTS_FOUND
8309
The user buffer is too small.
ERROR_DS_USER_
BUFFER_TO_SMALL
8310
The attribute specified in the operation is not present on the
object.
ERROR_DS_ATT_IS_NOT_
ON_OBJ
8311
Illegal modify operation. Some aspect of the modification is
not permitted.
ERROR_DS_ILLEGAL_MOD_
OPERATION
8312
The specified object is too large.
ERROR_DS_OBJ_TOO_
LARGE
8313
The specified instance type is not valid.
ERROR_DS_BAD_
INSTANCE_TYPE
8314
The operation must be performed at the master DSA. The
DNS root attribute is missing on the cross-reference object.
ERROR_DS_MASTERDSA_
REQUIRED
8315
The object class attribute must be specified.
ERROR_DS_OBJECT_
CLASS_REQUIRED
8316
A required attribute is missing.
ERROR_DS_MISSING_
REQUIRED_ATT
8317
An attempt was made to modify an object to include an
attribute that is not legal for its class
ERROR_DS_ATT_NOT_DEF_
FOR_CLASS
8318
The specified attribute is already present on the object.
ERROR_DS_ATT_ALREADY_
EXISTS
8320
The specified attribute is not present, or has no values.
ERROR_DS_CANT_ADD_
ATT_VALUES
8321
An attribute's single value constraint has been violated.
ERROR_DS_SINGLE_
VALUE_CONSTRAINT
8322
An attribute's range constraint has been violated.
ERROR_DS_RANGE_
CONSTRAINT
Automation Engine
121
8323
The specified value already exists.
ERROR_DS_ATT_VAL_
ALREADY_EXISTS
8324
The attribute cannot be removed because it is not present on
the object.
ERROR_DS_CANT_REM_
MISSING_ATT
8325
The attribute value cannot be removed because it is not
present on the object.
ERROR_DS_CANT_REM_
MISSING_ATT_VAL
8326
The specified root object cannot be a subref.
ERROR_DS_ROOT_CANT_
BE_SUBREF
8327
Chaining is not permitted.
ERROR_DS_NO_CHAINING
8328
Chained evaluation is not permitted.
ERROR_DS_NO_CHAINED_
EVAL
8329
The operation could not be performed because the object's
parent is either uninstantiated or deleted.
ERROR_DS_NO_PARENT_
OBJECT
8330
Having a parent that is an alias is not permitted. Aliases are
leaf objects.
ERROR_DS_PARENT_IS_
AN_ALIAS
8331
The object and parent must be of the same type, either both
masters or both replicas.
ERROR_DS_CANT_MIX_
MASTER_AND_REPS
8332
The operation cannot be performed because child objects
exist. This operation can only be performed on a leaf object.
ERROR_DS_CHILDREN_
EXIST
8333
Directory object not found.
ERROR_DS_OBJ_NOT_
FOUND
8334
The aliased object is missing.
ERROR_DS_ALIASED_OBJ_
MISSING
8335
The object name has bad syntax.
ERROR_DS_BAD_NAME_
SYNTAX
8336
It is not permitted for an alias to refer to another alias.
ERROR_DS_ALIAS_POINTS_
TO_ALIAS
8337
The alias cannot be dereferenced.
ERROR_DS_CANT_DEREF_
ALIAS
8338
The operation is out of scope.
ERROR_DS_OUT_OF_
SCOPE
8340
The DSA object cannot be deleted.
ERROR_DS_CANT_
DELETE_DSA_OBJ
8341
A directory service error has occurred.
ERROR_DS_GENERIC_
ERROR
8342
The operation can only be performed on an internal master
DSA object.
ERROR_DS_DSA_MUST_
BE_INT_MASTER
8343
The object must be of class DSA.
ERROR_DS_CLASS_NOT_
DSA
8344
Insufficient access rights to perform the operation.
ERROR_DS_INSUFF_
ACCESS_RIGHTS
8345
The object cannot be added because the parent is not on the
list of possible superiors.
ERROR_DS_ILLEGAL_
SUPERIOR
122
Chapter 5 Codes d'erreur externes
8346
Access to the attribute is not permitted because the attribute
is owned by the Security Accounts Manager (SAM).
ERROR_DS_ATTRIBUTE_
OWNED_BY_SAM
8347
The name has too many parts.
ERROR_DS_NAME_TOO_
MANY_PARTS
8348
The name is too long.
ERROR_DS_NAME_TOO_
LONG
8349
The name value is too long.
ERROR_DS_NAME_VALUE_
TOO_LONG
8350
The directory service encountered an error parsing a name.
ERROR_DS_NAME_
UNPARSEABLE
8351
The directory service cannot get the attribute type for a
name.
ERROR_DS_NAME_TYPE_
UNKNOWN
8352
The name does not identify an object; the name identifies a
phantom.
ERROR_DS_NOT_AN_
OBJECT
8353
The security descriptor is too short.
ERROR_DS_SEC_DESC_
TOO_SHORT
8354
The security descriptor is invalid.
ERROR_DS_SEC_DESC_
INVALID
8355
Failed to create name for deleted object.
ERROR_DS_NO_DELETED_
NAME
8356
The parent of a new subref must exist.
ERROR_DS_SUBREF_
MUST_HAVE_PARENT
8357
The object must be a naming context.
ERROR_DS_NCNAME_
MUST_BE_NC
8358
It is not permitted to add an attribute which is owned by the
system.
ERROR_DS_CANT_ADD_
SYSTEM_ONLY
8359
The class of the object must be structural; you cannot
instantiate an abstract class.
ERROR_DS_CLASS_MUST_
BE_CONCRETE
8360
The schema object could not be found.
ERROR_DS_INVALID_DMD
8361
A local object with this GUID (dead or alive) already exists.
ERROR_DS_OBJ_GUID_
EXISTS
8362
The operation cannot be performed on a back link.
ERROR_DS_NOT_ON_
BACKLINK
8363
The cross reference for the specified naming context could
not be found.
ERROR_DS_NO_
CROSSREF_FOR_NC
8364
The operation could not be performed because the directory
service is shutting down.
ERROR_DS_SHUTTING_
DOWN
8365
The directory service request is invalid.
ERROR_DS_UNKNOWN_
OPERATION
8366
The role owner attribute could not be read.
ERROR_DS_INVALID_
ROLE_OWNER
8367
The requested FSMO operation failed. The current FSMO
holder could not be reached.
ERROR_DS_COULDNT_
CONTACT_FSMO
Automation Engine
123
8368
Modification of a DN across a naming context is not
permitted.
ERROR_DS_CROSS_NC_
DN_RENAME
8369
The attribute cannot be modified because it is owned by the
system.
ERROR_DS_CANT_MOD_
SYSTEM_ONLY
8370
Only the replicator can perform this function.
ERROR_DS_REPLICATOR_
ONLY
8371
The specified class is not defined.
ERROR_DS_OBJ_CLASS_
NOT_DEFINED
8372
The specified class is not a subclass.
ERROR_DS_OBJ_CLASS_
NOT_SUBCLASS
8373
The name reference is invalid.
ERROR_DS_NAME_
REFERENCE_INVALID
8374
A cross reference already exists.
ERROR_DS_CROSS_REF_
EXISTS
8375
It is not permitted to delete a master cross reference.
ERROR_DS_CANT_DEL_
MASTER_CROSSREF
8376
Subtree notifications are only supported on NC heads.
ERROR_DS_SUBTREE_
NOTIFY_NOT_NC_HEAD
8377
Notification filter is too complex.
ERROR_DS_NOTIFY_
FILTER_TOO_COMPLEX
8378
Schema update failed: duplicate RDN.
ERROR_DS_DUP_RDN
8379
Schema update failed: duplicate OID
ERROR_DS_DUP_OID
8380
Schema update failed: duplicate MAPI identifier.
ERROR_DS_DUP_MAPI_ID
8381
Schema update failed: duplicate schema-id GUID.
ERROR_DS_DUP_SCHEMA_
ID_GUID
8382
Schema update failed: duplicate LDAP display name.
ERROR_DS_DUP_LDAP_
DISPLAY_NAME
8383
Schema update failed: range-lower less than range upper
ERROR_DS_SEMANTIC_
ATT_TEST
8384
Schema update failed: syntax mismatch
ERROR_DS_SYNTAX_
MISMATCH
8385
Schema deletion failed: attribute is used in must-contain
ERROR_DS_EXISTS_IN_
MUST_HAVE
8386
Schema deletion failed: attribute is used in may-contain
ERROR_DS_EXISTS_IN_
MAY_HAVE
8387
Schema update failed: attribute in may-contain does not exist ERROR_DS_
NONEXISTENT_MAY_HAVE
8388
Schema update failed: attribute in must-contain does not
exist
ERROR_DS_
NONEXISTENT_MUST_
HAVE
8389
Schema update failed: class in aux-class list does not exist
or is not an auxiliary class
ERROR_DS_AUX_CLS_
TEST_FAIL
8390
Schema update failed: class in poss-superiors does not exist
ERROR_DS_
NONEXISTENT_POSS_SUP
124
Chapter 5 Codes d'erreur externes
8391
Schema update failed: class in subclassof list does not exist
or does not satisfy hierarchy rules
ERROR_DS_SUB_CLS_
TEST_FAIL
8392
Schema update failed: Rdn-Att-Id has wrong syntax
ERROR_DS_BAD_RDN_
ATT_ID_SYNTAX
8393
Schema deletion failed: class is used as auxiliary class
ERROR_DS_EXISTS_IN_
AUX_CLS
8394
Schema deletion failed: class is used as sub class
ERROR_DS_EXISTS_IN_
SUB_CLS
8395
Schema deletion failed: class is used as poss superior
ERROR_DS_EXISTS_IN_
POSS_SUP
8396
Schema update failed in recalculating validation cache.
ERROR_DS_
RECALCSCHEMA_FAILED
8397
The tree deletion is not finished.
ERROR_DS_TREE_DELETE_
NOT_FINISHED
8398
The requested delete operation could not be performed.
ERROR_DS_CANT_DELETE
8399
Cannot read the governs class identifier for the schema
record.
ERROR_DS_ATT_SCHEMA_
REQ_ID
8400
The attribute schema has bad syntax.
ERROR_DS_BAD_ATT_
SCHEMA_SYNTAX
8401
The attribute could not be cached.
ERROR_DS_CANT_CACHE_
ATT
8402
The class could not be cached.
ERROR_DS_CANT_CACHE_
CLASS
8403
The attribute could not be removed from the cache.
ERROR_DS_CANT_
REMOVE_ATT_CACHE
8404
The class could not be removed from the cache.
ERROR_DS_CANT_
REMOVE_CLASS_CACHE
8405
The distinguished name attribute could not be read.
ERROR_DS_CANT_
RETRIEVE_DN
8406
A required subref is missing.
ERROR_DS_MISSING_
SUPREF
8407
The instance type attribute could not be retrieved.
ERROR_DS_CANT_
RETRIEVE_INSTANCE
8408
An internal error has occurred.
ERROR_DS_CODE_
INCONSISTENCY
8409
A database error has occurred.
ERROR_DS_DATABASE_
ERROR
8410
The attribute GOVERNSID is missing.
ERROR_DS_GOVERNSID_
MISSING
8411
An expected attribute is missing.
ERROR_DS_MISSING_
EXPECTED_ATT
8412
The specified naming context is missing a cross reference.
ERROR_DS_NCNAME_
MISSING_CR_REF
Automation Engine
125
8413
A security checking error has occurred.
ERROR_DS_SECURITY_
CHECKING_ERROR
8414
The schema is not loaded.
ERROR_DS_SCHEMA_NOT_
LOADED
8415
Schema allocation failed.
ERROR_DS_SCHEMA_
ALLOC_FAILED
8416
Failed to obtain the required syntax for the attribute schema.
ERROR_DS_ATT_SCHEMA_
REQ_SYNTAX
8417
The global catalog verification failed. The global catalog is
not available or does not support the operation. Some part of
the directory is currently not available.
ERROR_DS_GCVERIFY_
ERROR
8418
The replication operation failed because of a schema
mismatch between the servers involved.
ERROR_DS_DRA_SCHEMA_
MISMATCH
8419
The DSA object could not be found.
ERROR_DS_CANT_FIND_
DSA_OBJ
8420
The naming context could not be found.
ERROR_DS_CANT_FIND_
EXPECTED_NC
8421
The naming context could not be found in the cache.
ERROR_DS_CANT_FIND_
NC_IN_CACHE
8422
The child object could not be retrieved.
ERROR_DS_CANT_
RETRIEVE_CHILD
8423
The modification was not permitted for security reasons.
ERROR_DS_SECURITY_
ILLEGAL_MODIFY
8424
The operation cannot replace the hidden record.
ERROR_DS_CANT_
REPLACE_HIDDEN_REC
8425
The hierarchy file is invalid.
ERROR_DS_BAD_
HIERARCHY_FILE
8426
The attempt to build the hierarchy table failed.
ERROR_DS_BUILD_
HIERARCHY_TABLE_FAILED
8427
The directory configuration parameter is missing from the
registry.
ERROR_DS_CONFIG_
PARAM_MISSING
8428
The attempt to count the address book indices failed.
ERROR_DS_COUNTING_
AB_INDICES_FAILED
8429
The allocation of the hierarchy table failed.
ERROR_DS_HIERARCHY_
TABLE_MALLOC_FAILED
8430
The directory service encountered an internal failure.
ERROR_DS_INTERNAL_
FAILURE
8431
The directory service encountered an unknown failure.
ERROR_DS_UNKNOWN_
ERROR
8432
A root object requires a class of 'top'.
ERROR_DS_ROOT_
REQUIRES_CLASS_TOP
8433
This directory server is shutting down, and cannot take
ownership of new floating single-master operation roles.
ERROR_DS_REFUSING_
FSMO_ROLES
126
Chapter 5 Codes d'erreur externes
8434
The directory service is missing mandatory configuration
information, and is unable to determine the ownership of
floating single-master operation roles.
ERROR_DS_MISSING_
FSMO_SETTINGS
8435
The directory service was unable to transfer ownership of
one or more floating single-master operation roles to other
servers.
ERROR_DS_UNABLE_TO_
SURRENDER_ROLES
8436
The replication operation failed.
ERROR_DS_DRA_GENERIC
8437
An invalid parameter was specified for this replication
operation.
ERROR_DS_DRA_INVALID_
PARAMETER
8438
The Windows NT directory service is too busy to complete
the replication operation at this time.
ERROR_DS_DRA_BUSY
8439
The distinguished name specified for this replication
operation is invalid.
ERROR_DS_DRA_BAD_DN
8440
The naming context specified for this replication operation is
invalid.
ERROR_DS_DRA_BAD_NC
8441
The distinguished name specified for this replication
operation already exists.
ERROR_DS_DRA_DN_
EXISTS
8442
The replication system encountered an internal error.
ERROR_DS_DRA_
INTERNAL_ERROR
8443
The replication operation encountered a database
inconsistency.
ERROR_DS_DRA_
INCONSISTENT_DIT
8444
The server specified for this replication operation could not be ERROR_DS_DRA_
contacted.
CONNECTION_FAILED
8445
The replication operation encountered an object with an
invalid instance type.
ERROR_DS_DRA_BAD_
INSTANCE_TYPE
8446
The replication operation failed to allocate memory.
ERROR_DS_DRA_OUT_OF_
MEM
8447
The replication operation encountered an error with the mail
system.
ERROR_DS_DRA_MAIL_
PROBLEM
8448
The replication reference information for the target server
already exists.
ERROR_DS_DRA_REF_
ALREADY_EXISTS
8449
The replication reference information for the target server
does not exist.
ERROR_DS_DRA_REF_
NOT_FOUND
8450
The naming context cannot be removed because it is
replicated to another server.
ERROR_DS_DRA_OBJ_IS_
REP_SOURCE
8451
The replication operation encountered a database error.
ERROR_DS_DRA_DB_
ERROR
8452
The naming context is in the process of being removed or is
not replicated from the specified server.
ERROR_DS_DRA_NO_
REPLICA
8453
Replication access was denied.
ERROR_DS_DRA_ACCESS_
DENIED
8454
The requested operation is not supported by this version of
the Windows NT directory service.
ERROR_DS_DRA_NOT_
SUPPORTED
8455
The replication remote procedure call was cancelled.
ERROR_DS_DRA_RPC_
CANCELLED
Automation Engine
127
8456
The source server is currently rejecting replication requests.
ERROR_DS_DRA_SOURCE_
DISABLED
8457
The destination server is currently rejecting replication
requests.
ERROR_DS_DRA_SINK_
DISABLED
8458
The replication operation failed due to a collision of object
names.
ERROR_DS_DRA_NAME_
COLLISION
8459
The replication source has been reinstalled.
ERROR_DS_DRA_SOURCE_
REINSTALLED
8460
The replication operation failed because a required parent
object is missing.
ERROR_DS_DRA_MISSING_
PARENT
8461
The replication operation was preempted.
ERROR_DS_DRA_
PREEMPTED
8462
The replication synchronization attempt was abandoned
because of a lack of updates.
ERROR_DS_DRA_
ABANDON_SYNC
8463
The replication operation was terminated because the
system is shutting down.
ERROR_DS_DRA_
SHUTDOWN
8464
The replication synchronization attempt failed as the
destination partial attribute set is not a subset of source
partial attribute set.
ERROR_DS_DRA_
INCOMPATIBLE_PARTIAL_
SET
8465
The replication synchronization attempt failed because a
master replica attempted to sync from a partial replica.
ERROR_DS_DRA_SOURCE_
IS_PARTIAL_REPLICA
8466
The server specified for this replication operation was
contacted, but that server was unable to contact an
additional server needed to complete the operation.
ERROR_DS_DRA_EXTN_
CONNECTION_FAILED
8467
A schema mismatch is detected between the source and the
build used during a replica install. The replica cannot be
installed.
ERROR_DS_INSTALL_
SCHEMA_MISMATCH
8468
Schema update failed: An attribute with the same link
identifier already exists.
ERROR_DS_DUP_LINK_ID
8469
Name translation: Generic processing error.
ERROR_DS_NAME_ERROR_
RESOLVING
8470
Name translation: Could not find the name or insufficient right ERROR_DS_NAME_ERROR_
to see name.
NOT_FOUND
8471
Name translation: Input name mapped to more than one
output name.
ERROR_DS_NAME_ERROR_
NOT_UNIQUE
8472
Name translation: Input name found, but not the associated
output format.
ERROR_DS_NAME_ERROR_
NO_MAPPING
8473
Name translation: Unable to resolve completely, only the
domain was found.
ERROR_DS_NAME_ERROR_
DOMAIN_ONLY
8474
Name translation: Unable to perform purely syntactical
mapping at the client without going out to the wire.
ERROR_DS_NAME_ERROR_
NO_SYNTACTICAL_
MAPPING
8475
Modification of a constructed att is not allowed.
ERROR_DS_
CONSTRUCTED_ATT_MOD
128
Chapter 5 Codes d'erreur externes
8476
The OM-Object-Class specified is incorrect for an attribute
with the specified syntax.
ERROR_DS_WRONG_OM_
OBJ_CLASS
8477
The replication request has been posted; waiting for reply.
ERROR_DS_DRA_REPL_
PENDING
8478
The requested operation requires a directory service, and
none was available.
ERROR_DS_DS_REQUIRED
8479
The LDAP display name of the class or attribute contains
non-ASCII characters.
ERROR_DS_INVALID_LDAP_
DISPLAY_NAME
8480
The requested search operation is only supported for base
searches.
ERROR_DS_NON_BASE_
SEARCH
8481
The search failed to retrieve attributes from the database.
ERROR_DS_CANT_
RETRIEVE_ATTS
8482
The schema update operation tried to add a backward link
attribute that has no corresponding forward link.
ERROR_DS_BACKLINK_
WITHOUT_LINK
8483
Source and destination of a cross domain move do not agree
on the object's epoch number. Either source or destination
does not have the latest version of the object.
ERROR_DS_EPOCH_
MISMATCH
8484
Source and destination of a cross domain move do not agree
on the object's current name. Either source or destination
does not have the latest version of the object.
ERROR_DS_SRC_NAME_
MISMATCH
8485
Source and destination of a cross domain move operation are ERROR_DS_SRC_AND_
identical. Caller should use local move operation instead of
DST_NC_IDENTICAL
cross domain move operation.
8486
Source and destination for a cross domain move are not in
agreement on the naming contexts in the forest. Either
source or destination does not have the latest version of the
Partitions container.
ERROR_DS_DST_NC_
MISMATCH
8487
Destination of a cross domain move is not authoritative for
the destination naming context.
ERROR_DS_NOT_
AUTHORITIVE_FOR_DST_
NC
8488
Source and destination of a cross domain move do not agree
on the identity of the source object. Either source or
destination does not have the latest version of the source
object.
ERROR_DS_SRC_GUID_
MISMATCH
8489
Object being moved across domains is already known to be
ERROR_DS_CANT_MOVE_
deleted by the destination server. The source server does not DELETED_OBJECT
have the latest version of the source object.
8490
Another operation which requires exclusive access to the
PDC PSMO is already in progress.
ERROR_DS_PDC_
OPERATION_IN_PROGRESS
8491
A cross domain move operation failed such that the two
versions of the moved object exist - one each in the source
and destination domains. The destination object needs to be
removed to restore the system to a consistent state.
ERROR_DS_CROSS_
DOMAIN_CLEANUP_REQD
8492
This object may not be moved across domain boundaries
either because cross domain moves for this class are
disallowed, or the object has some special characteristics,
eg: trust account or restricted RID, which prevent its move.
ERROR_DS_ILLEGAL_
XDOM_MOVE_OPERATION
Automation Engine
129
8493
Can't move objects with memberships across domain
boundaries as once moved, this would violate the
membership conditions of the account group. Remove the
object from any account group memberships and retry.
ERROR_DS_CANT_WITH_
ACCT_GROUP_
MEMBERSHPS
8494
A naming context head must be the immediate child of
another naming context head, not of an interior node.
ERROR_DS_NC_MUST_
HAVE_NC_PARENT
8495
The directory cannot validate the proposed naming context
name because it does not hold a replica of the naming
context above the proposed naming context.
ERROR_DS_CR_
IMPOSSIBLE_TO_VALIDATE
8496
Destination of a cross domain move must be in native mode.
ERROR_DS_DST_DOMAIN_
NOT_NATIVE
8497
The operation can not be performed because the server does
not have an infrastructure container in the domain of interest.
ERROR_DS_MISSING_
INFRASTRUCTURE_
CONTAINER
8498
Cross domain move of account groups is not allowed.
ERROR_DS_CANT_MOVE_
ACCOUNT_GROUP
8499
Cross domain move of resource groups is not allowed.
ERROR_DS_CANT_MOVE_
RESOURCE_GROUP
8500
The search flags for the attribute are invalid. The ANR bit is
valid only on attributes of Unicode or Teletex strings.
ERROR_DS_INVALID_
SEARCH_FLAG
8501
Tree deletions starting at an object which has an NC head as
a descendant are not allowed.
ERROR_DS_NO_TREE_
DELETE_ABOVE_NC
8502
The directory service failed to lock a tree in preparation for a
tree deletion because the tree was in use.
ERROR_DS_COULDNT_
LOCK_TREE_FOR_DELETE
8503
The directory service failed to identify the list of objects to
delete while attempting a tree deletion.
ERROR_DS_COULDNT_
IDENTIFY_OBJECTS_FOR_
TREE_DELETE
8504
Security Accounts Manager initialization failed because of
the following error: %1.
ERROR_DS_SAM_INIT_
FAILURE
Error Status: 0x%2. Click OK to shut down the system, then
select Safe Mode during reboot. For more information, check
the event log.
8505
Only an administrator can modify the membership list of an
administrative group.
ERROR_DS_SENSITIVE_
GROUP_VIOLATION
8506
Cannot change the primary group ID of a domain controller
account.
ERROR_DS_CANT_MOD_
PRIMARYGROUPID
9001
DNS server unable to interpret format.
DNS_ERROR_RCODE_
FORMAT_ERROR
9002
DNS server failure.
DNS_ERROR_RCODE_
SERVER_FAILURE
9003
DNS name does not exist.
DNS_ERROR_RCODE_
NAME_ERROR
9004
DNS request not supported by name server.
DNS_ERROR_RCODE_NOT_
IMPLEMENTED
130
Chapter 5 Codes d'erreur externes
9005
DNS operation refused.
DNS_ERROR_RCODE_
REFUSED
9006
DNS name that ought not exist, does exist.
DNS_ERROR_RCODE_
YXDOMAIN
9007
DNS RR set that ought not exist, does exist.
DNS_ERROR_RCODE_
YXRRSET
9008
DNS RR set that ought to exist, does not exist.
DNS_ERROR_RCODE_
NXRRSET
9009
DNS server not authoritative for zone.
DNS_ERROR_RCODE_
NOTAUTH
9010
DNS name in update or prereq is not in zone.
DNS_ERROR_RCODE_
NOTZONE
9016
DNS signature failed to verify.
DNS_ERROR_RCODE_
BADSIG
9017
DNS bad key.
DNS_ERROR_RCODE_
BADKEY
9018
DNS signature validity expired.
DNS_ERROR_RCODE_
BADTIME
9501
No records found for given DNS query.
DNS_INFO_NO_RECORDS
9502
Bad DNS packet.
DNS_ERROR_BAD_PACKET
9503
No DNS packet.
DNS_ERROR_NO_PACKET
9504
DNS error, check rcode.
DNS_ERROR_RCODE
9505
Unsecured DNS packet.
DNS_ERROR_UNSECURE_
PACKET
9551
Invalid DNS type.
DNS_ERROR_INVALID_
TYPE
9552
Invalid IP address.
DNS_ERROR_INVALID_IP_
ADDRESS
9553
Invalid property.
DNS_ERROR_INVALID_
PROPERTY
9554
Try DNS operation again later.
DNS_ERROR_TRY_AGAIN_
LATER
9555
Record for given name and type is not unique.
DNS_ERROR_NOT_UNIQUE
9556
DNS name does not comply with RFC specifications.
DNS_ERROR_NON_RFC_
NAME
9557
DNS name is a fully-qualified DNS name.
DNS_STATUS_FQDN
9558
DNS name is dotted (multi-label).
DNS_STATUS_DOTTED_
NAME
9559
DNS name is a single-part name.
DNS_STATUS_SINGLE_
PART_NAME
9601
DNS zone does not exist.
DNS_ERROR_ZONE_DOES_
NOT_EXIST
Automation Engine
131
9602
DNS zone information not available.
DNS_ERROR_NO_ZONE_
INFO
9603
Invalid operation for DNS zone.
DNS_ERROR_INVALID_
ZONE_OPERATION
9604
Invalid DNS zone configuration.
DNS_ERROR_ZONE_
CONFIGURATION_ERROR
9605
DNS zone has no start of authority (SOA) record.
DNS_ERROR_ZONE_HAS_
NO_SOA_RECORD
9606
DNS zone has no name server (NS) record.
DNS_ERROR_ZONE_HAS_
NO_NS_RECORDS
9607
DNS zone is locked.
DNS_ERROR_ZONE_
LOCKED
9608
DNS zone creation failed.
DNS_ERROR_ZONE_
CREATION_FAILED
9609
DNS zone already exists.
DNS_ERROR_ZONE_
ALREADY_EXISTS
9610
DNS automatic zone already exists.
DNS_ERROR_AUTOZONE_
ALREADY_EXISTS
9611
Invalid DNS zone type.
DNS_ERROR_INVALID_
ZONE_TYPE
9612
Secondary DNS zone requires master IP address.
DNS_ERROR_
SECONDARY_REQUIRES_
MASTER_IP
9613
DNS zone not secondary.
DNS_ERROR_ZONE_NOT_
SECONDARY
9614
Need secondary IP address.
DNS_ERROR_NEED_
SECONDARY_ADDRESSES
9615
WINS initialization failed.
DNS_ERROR_WINS_INIT_
FAILED
9616
Need WINS servers.
DNS_ERROR_NEED_WINS_
SERVERS
9617
NBTSTAT initialization call failed.
DNS_ERROR_NBSTAT_
INIT_FAILED
9618
Invalid delete of start of authority (SOA)
DNS_ERROR_SOA_
DELETE_INVALID
9651
Primary DNS zone requires datafile.
DNS_ERROR_PRIMARY_
REQUIRES_DATAFILE
9652
Invalid datafile name for DNS zone.
DNS_ERROR_INVALID_
DATAFILE_NAME
9653
Failed to open datafile for DNS zone.
DNS_ERROR_DATAFILE_
OPEN_FAILURE
9654
Failed to write datafile for DNS zone.
DNS_ERROR_FILE_
WRITEBACK_FAILED
9655
Failure while reading datafile for DNS zone.
DNS_ERROR_DATAFILE_
PARSING
132
Chapter 5 Codes d'erreur externes
9701
DNS record does not exist.
DNS_ERROR_RECORD_
DOES_NOT_EXIST
9702
DNS record format error.
DNS_ERROR_RECORD_
FORMAT
9703
Node creation failure in DNS.
DNS_ERROR_NODE_
CREATION_FAILED
9704
Unknown DNS record type.
DNS_ERROR_UNKNOWN_
RECORD_TYPE
9705
DNS record timed out.
DNS_ERROR_RECORD_
TIMED_OUT
9706
Name not in DNS zone.
DNS_ERROR_NAME_NOT_
IN_ZONE
9707
CNAME loop detected.
DNS_ERROR_CNAME_LOOP
9708
Node is a CNAME DNS record.
DNS_ERROR_NODE_IS_
CNAME
9709
A CNAME record already exists for given name.
DNS_ERROR_CNAME_
COLLISION
9710
Record only at DNS zone root.
DNS_ERROR_RECORD_
ONLY_AT_ZONE_ROOT
9711
DNS record already exists.
DNS_ERROR_RECORD_
ALREADY_EXISTS
9712
Secondary DNS zone data error.
DNS_ERROR_
SECONDARY_DATA
9713
Could not create DNS cache data.
DNS_ERROR_NO_CREATE_
CACHE_DATA
9714
DNS name does not exist.
DNS_ERROR_NAME_DOES_
NOT_EXIST
9715
Could not create pointer (PTR) record.
DNS_WARNING_PTR_
CREATE_FAILED
9716
DNS domain was undeleted.
DNS_WARNING_DOMAIN_
UNDELETED
9717
The Windows NT directory service is unavailable.
DNS_ERROR_DS_
UNAVAILABLE
9718
DNS zone already exists in Windows NT directory service.
DNS_ERROR_DS_ZONE_
ALREADY_EXISTS
9719
DNS server not creating or reading the boot file for the
directory service integrated DNS zone.
DNS_ERROR_NO_
BOOTFILE_IF_DS_ZONE
9751
DNS AXFR (zone transfer) complete.
DNS_INFO_AXFR_
COMPLETE
9752
DNS zone transfer failed.
DNS_ERROR_AXFR
9753
Added local WINS server.
DNS_INFO_ADDED_LOCAL_
WINS
9801
Secure update call needs to continue update request.
DNS_STATUS_CONTINUE_
NEEDED
Automation Engine
9851
TCP/IP network protocol not installed.
DNS_ERROR_NO_TCPIP
9852
No DNS servers configured for local system.
DNS_ERROR_NO_DNS_
SERVERS
133
10004 A blocking operation was interrupted by a call to
WSACancelBlockingCall.
WSAEINTR
10009 The file handle supplied is not valid.
WSAEBADF
10013 An attempt was made to access a socket in a way forbidden
by its access permissions.
WSAEACCES
10014 The system detected an invalid pointer address in attempting
to use a pointer argument in a call.
WSAEFAULT
10022 An invalid argument was supplied.
WSAEINVAL
10024 Too many open sockets.
WSAEMFILE
10035 A non-blocking socket operation could not be completed
immediately.
WSAEWOULDBLOCK
10036 A blocking operation is currently executing.
WSAEINPROGRESS
10037 An operation was attempted on a non-blocking socket that
already had an operation in progress.
WSAEALREADY
10038 An operation was attempted on something that is not a
socket.
WSAENOTSOCK
10039 A required address was omitted from an operation on a
socket.
WSAEDESTADDRREQ
10040 A message sent on a datagram socket was larger than the
internal message buffer or some other network limit, or the
buffer used to receive a datagram into was smaller than the
datagram itself.
WSAEMSGSIZE
10041 A protocol was specified in the socket function call that does
not support the semantics of the socket type requested.
WSAEPROTOTYPE
10042 An unknown, invalid, or unsupported option or level was
specified in a getsockopt or setsockopt call.
WSAENOPROTOOPT
10043 The requested protocol has not been configured into the
system, or no implementation for it exists.
WSAEPROTONOSUPPORT
10044 The support for the specified socket type does not exist in
this address family.
WSAESOCKTNOSUPPORT
10045 The attempted operation is not supported for the type of
object referenced.
WSAEOPNOTSUPP
10046 The protocol family has not been configured into the system
or no implementation for it exists.
WSAEPFNOSUPPORT
10047 An address incompatible with the requested protocol was
used.
WSAEAFNOSUPPORT
10048 Only one usage of each socket address (protocol/network
address/port) is normally permitted.
WSAEADDRINUSE
10049 The requested address is not valid in its context.
WSAEADDRNOTAVAIL
10050 A socket operation encountered a dead network.
WSAENETDOWN
134
Chapter 5 Codes d'erreur externes
10051 A socket operation was attempted to an unreachable
network.
WSAENETUNREACH
10052 The connection has been broken due to keep-alive activity
detecting a failure while the operation was in progress.
WSAENETRESET
10053 An established connection was aborted by the software in
your host machine.
WSAECONNABORTED
10054 An existing connection was forcibly closed by the remote
host.
WSAECONNRESET
10055 An operation on a socket could not be performed because the WSAENOBUFS
system lacked sufficient buffer space or because a queue
was full.
10056 A connect request was made on an already connected
socket.
WSAEISCONN
10057 A request to send or receive data was disallowed because
the socket is not connected and (when sending on a
datagram socket using a sendto call) no address was
supplied.
WSAENOTCONN
10058 A request to send or receive data was disallowed because
the socket had already been shut down in that direction with
a previous shutdown call.
WSAESHUTDOWN
10059 Too many references to some kernel object.
WSAETOOMANYREFS
10060 A connection attempt failed because the connected party did
not properly respond after a period of time, or established
connection failed because connected host has failed to
respond.
WSAETIMEDOUT
10061 No connection could be made because the target machine
actively refused it.
WSAECONNREFUSED
10062 Cannot translate name.
WSAELOOP
10063 Name component or name was too long.
WSAENAMETOOLONG
10064 A socket operation failed because the destination host was
down.
WSAEHOSTDOWN
10065 A socket operation was attempted to an unreachable host.
WSAEHOSTUNREACH
10066 Cannot remove a directory that is not empty.
WSAENOTEMPTY
10067 A Windows Sockets implementation may have a limit on the
number of applications that may use it simultaneously.
WSAEPROCLIM
10068 Ran out of quota.
WSAEUSERS
10069 Ran out of disk quota.
WSAEDQUOT
10070 File handle reference is no longer available.
WSAESTALE
10071 Item is not available locally.
WSAEREMOTE
10091 WSAStartup cannot function at this time because the
underlying system it uses to provide network services is
currently unavailable.
WSASYSNOTREADY
10092 The Windows Sockets version requested is not supported.
WSAVERNOTSUPPORTED
Automation Engine
135
10093 Either the application has not called WSAStartup, or
WSAStartup failed.
WSANOTINITIALISED
10101 Returned by WSARecv or WSARecvFrom to indicate the
remote party has initiated a graceful shutdown sequence.
WSAEDISCON
10102 No more results can be returned by
WSALookupServiceNext.
WSAENOMORE
10103 A call to WSALookupServiceEnd was made while this call
was still processing. The call has been canceled.
WSAECANCELLED
10104 The procedure call table is invalid.
WSAEINVALIDPROCTABLE
10105 The requested service provider is invalid.
WSAEINVALIDPROVIDER
10106 The requested service provider could not be loaded or
initialized.
WSAEPROVIDERFAILEDINIT
10107 A system call that should never fail has failed.
WSASYSCALLFAILURE
10108 No such service is known. The service cannot be found in
the specified name space.
WSASERVICE_NOT_FOUND
10109 The specified class was not found.
WSATYPE_NOT_FOUND
10110 No more results can be returned by
WSALookupServiceNext.
WSA_E_NO_MORE
10111 A call to WSALookupServiceEnd was made while this call
was still processing. The call has been canceled.
WSA_E_CANCELLED
10112 A database query failed because it was actively refused.
WSAEREFUSED
11001 No such host is known.
WSAHOST_NOT_FOUND
11002 This is usually a temporary error during hostname resolution
and means that the local server did not receive a response
from an authoritative server.
WSATRY_AGAIN
11003 A non-recoverable error occurred during a database lookup.
WSANO_RECOVERY
11004 The requested name is valid and was found in the database,
but it does not have the correct associated data being
resolved for.
WSANO_DATA
11005 At least one reserve has arrived.
WSA_QOS_RECEIVERS
11006 At least one path has arrived.
WSA_QOS_SENDERS
11007 There are no senders.
WSA_QOS_NO_SENDERS
11008 There are no receivers.
WSA_QOS_NO_RECEIVERS
11009 Reserve has been confirmed.
WSA_QOS_REQUEST_
CONFIRMED
11010 Error due to lack of resources.
WSA_QOS_ADMISSION_
FAILURE
11011 Rejected for administrative reasons - bad credentials.
WSA_QOS_POLICY_
FAILURE
11012 Unknown or conflicting style.
WSA_QOS_BAD_STYLE
11013 Problem with some part of the filterspec or providerspecific
buffer in general.
WSA_QOS_BAD_OBJECT
136
Chapter 5 Codes d'erreur externes
11014 Problem with some part of the flowspec.
WSA_QOS_TRAFFIC_CTRL_
ERROR
11015 General QOS error.
WSA_QOS_GENERIC_
ERROR
Automation Engine
137
6 Prise en charge SNMP
6.1 Généralités sur SNMP
SNMP (Simple Network Management Protocol) est une norme industrielle pour la surveillance et le
contrôle de systèmes, d'appareils et de composants dans un environnement de réseau. Elle a été
définie par l'IETF (Internet Engineering Task Force). En tant que communauté d'intérêts, l'IEFT
s'occupe des problèmes de TCT/IP et d'Internet.
Lors de la surveillance et du contrôle d'unités de réseau, on fait généralement la distinction entre la gestion
SNMP et les Agents SNMP. L'Agent SNMP s'exécute sur la machine dont les systèmes, les appareils ou
les composants sont surveillés et contrôlés. Network Management Station (NMS) est une machine qui
affiche à l'aide d'une application les informations actuelles des unités de réseau surveillées et qui peut
également modifier les paramètres de ces unités de réseau.
Les Agents NMS et SNMP communiquent via le protocole de réseau TCP/IP. Deux types de
communication sont utilisés. D'une part, Network Management Station interroge l'état des unités de
réseau surveillées auprès des Agents SNMP ou définit de nouveaux paramètres. D'autre part, l'Agent
SNMP envoie des modifications d'état des unités de réseau surveillées à Network Management Station.
L'annonce d'une telle modification de statut s'appelle "interruption" ou "interruption SNMP".
Afin de pouvoir reconnaître au niveau mondial de manière incontestable les systèmes, appareils et
composants, un espace d'adresse MIB (Management Information Base) a été convenu. Dans la MIB, il
existe pour chaque unité de réseau à surveiller une ID de MIB. L'ID de MIB se compose d'une suite de
numéros séparés par des points. La MIB mondiale représente une énorme arborescence avec des
ramifications vers chacun des composants et systèmes.
SNMP fonctionne sur la base d'UDP (User Datagram Protocol). Ce protocole simple n'utilise aucune
surveillance des erreurs ni aucune confirmation des informations transmises. SNMP utilise par défaut le
port 161 pour les interrogations des Agents SNMP et le port 162 comme destinataire d'interruption.
6.2 UC4 et SNMP
Les différents statuts qui apparaissent dans le système UC4 peuvent être surveillés par SNMP. C'est le
cas, par exemple, pour la disponibilité d'UC4 Automation Engine et des Agents, des objets Alerte actifs
ou des Tâches bloquantes.
L'illustration suivante vous montre l'interaction entre UC4 et SNMP :
138
Chapter 6 Prise en charge SNMP
Si vous activez la connexion SNMP dans le UC4 Automation Engine, les valeurs pertinentes pour la
surveillance du système UC4 sont envoyées au sous-agent SNMP UC4. Ce dernier enregistre les
informations reçues dans sa MIB et la met à disposition de l'Agent maître SNMP. Le contenu de la MIB est
protégé en écriture, c'est-à-dire que le sous-agent SNMP UC4 n'autorise aucune modification de valeur
par la commande SNMP SET.
Il existe deux façons pour les applications telles que HP OpenView Operations d'accéder aux informations
:
l
l
Les applications demandent les informations à des intervalles périodiques par l'intermédiaire de
l'Agent maître SNMP. Ce dernier communique avec le sous-agent SNMP UC4 pour obtenir les
valeurs.
Des Evènements particulièrement importants qui se produisent dans le système UC4 déclenchent
des interruptions SNMP. Le sous-agent SNMP UC4 les transfère immédiatement à l'Agent maître
SNMP afin que les applications puissent être directement averties.
Dans certaines situations, le UC4 Automation Engine génère des interruptions prédéfinies. Vous pouvez
également envoyer vous-même des interruptions en utilisant l'application de Script :SEND_SNMP_
TRAP.
Dans le fichier INI du sous-agent SNMP UC4, il est possible de configurer si la MIB est pleine et/ou si
des interruptions doivent être envoyées. Par défaut, les deux Tâches sont exécutées. Si vous ne
souhaitez utiliser que les interruptions, il est judicieux de désactiver le remplissage de la MIB. L'utilisation
inutile de performance est ainsi évitée. Le paramètre de configuration se nomme processing= et se trouve
à la section [SNMP].
Automation Engine
139
Mode Agent maître sous UNIX
Sous UNIX, le sous-agent SNMP UC4 est également capable d'agir en tant qu'Agent maître SNMP. Cela
présente l'avantage de vous éviter la configuration du service SNMP.
Rubriques connexes :
Structure de la MIB
Installation du sous-agent SNMP UC4 (UNIX)
Installation du sous-agent SNMP UC4 (Windows)
Glossaire et FAQ du sous-agent SNMP UC4
Conditions préalables - check-list
6.3 Mode Agent sous UNIX
Le sous-agent SNMP UC4 peut être exécuté sous UNIX en tant que maître ou en tant que sous-agent.
Définissez le mode voulu dans le fichier INI avec le paramètre role= de la section [SNMP].
Agent maître (conseillé)
Avantages :
l
l
l
Inutile d'installer Net-SNMP
Meilleure performances
Mise en évidence plus facile des erreurs
Inconvénients :
l
l
l
Seule la surveillance UC4 est démarrée
Aucune autre MIB disponible
La Variable SNMPCONFPATH doit être définie. Elle contient le répertoire du fichier ucsnmp1.conf
(p. ex : "export SNMPCONFPATH=./")
140
Chapter 6 Prise en charge SNMP
Dans le fichier ucsnmp1.conf, il est possible d'indiquer le même paramètre que dans le fichier de
configuration de l'Agent net-SNMP (snmpd.conf).
Les paramètres suivants sont utilisés par le sous-agent SNMP de l'UC4 et possèdent la fonctionnalité :
l
l
l
l
l
trapcommunity
trapsink
rocommunity
rwcommunity
master
Vous trouverez l'explication des différents paramètres dans la description de snmp.conf du net-SNMP.
Exemple de fichier ucsnmp1.conf :
trapsink host1
trapsink host2
rocommunity public
master agentx
En mode Agent maître, aucun autre sous-agent ne peut établir de connexion au sous-agent SNMP
UC4.
Sous-agent
Le sous-agent SNMP UC4 fonctionne avec un Agent maître existant :
l
Un Agent maître compatible AgentX doit être démarré.
Automation Engine
l
l
141
Le moyen de communication standard est le fichier de socket local présent dans le répertoire
/var/agentx/master. Ce fichier est créé par l'Agent maître. Le sous-agent SNMP UC4 doit en
posséder les droits d'accès.
Le fichier de configuration snmpd.conf contient quelques paramètres :
Exemple de fichier ucsnmp1.conf :
trapsink
rocommunity
local
public
HP-UX
Le sous-agent SNMP UC4 doit être exécuté en mode Agent maître sous HP-UX. L'Agent maître natif d'un
système HP-UX est EMANATE. Le sous-agent SNMP UC4 utilise l'interface naaagt pour communiquer
avec lui. Elle sert de proxy SNMP. Le sous-agent SNMP UC4 redirige la requête SNMP vers un autre port
UDP via un OID enregistré. Le port par défaut utilisé par naaagt est 8161. Le sous-agent SNMP UC4 doit
donc utiliser un port autre que 161.
De plus amples informations relatives à la configuration de l'interface sont disponibles dans la
documentation sur naaagt
Rubriques connexes :
UC4 et SNMP
6.4 FAQ et glossaire du sous-agent SNMP UC4
Vous trouverez ici la foire aux questions et les termes importants concernant le sous-agent SNMP UC4.
142
Chapter 6 Prise en charge SNMP
Termes importants :
l
l
l
l
SNMP : Simple Network Management Protocol
MIB : Management Information Base. Enregistre les informations dans une structure arborescente.
La MIB fait partie des sous-agents SNMP.
Agent maître : service SNMP qui communique avec des sous-agents SNMP afin de demander des
informations à la MIB et de les transférer aux applications.
Sous-agent : enregistre des informations dans la MIB et les met à disposition dans l'Agent maître.
Questions fréquemment posées :
Qu'est-ce qu'un OID ?
Chaque élément d'information de la MIB possède un OID (Object Identifier) unique destiné à lire le
contenu. Les OID comportent une suite de nombres séparés par des points. Ils sont uniques au niveau
mondial. La MIB du sous-agent SNMP UC4 possède l'OID "1.3.6.1.4.1.2562.1.1". Chaque contenu de la
MIB dispose également d'un numéro ajouté à l'OID de la MIB. La structure arborescente de la MIB crée
des OID représentant la structure.
Exemple :
L'OID de la version de l'Agent UC4 est : "1.3.6.1.4.1.2562.1.1.1.1.0 "
L'OID se compose des parties suivantes :
1.3.6.1.4.1.2562.1.1 : MIB
1 : Groupe Agent
1.1.0 : version de l'Agent UC4
Qu'est-ce qu'une interruption ?
Une interruption est un message asynchrone envoyé par l'UC4 Automation Engine au sous-agent SNMP
UC4. Les interruptions ne sont pas enregistrées dans la MIB mais transférées directement à l'Agent
maître. Les applications reçoivent ainsi immédiatement les informations importantes.
Comment envoyer une interruption ?
Dans certaines situations, l'UC4 Automation Engine envoie des interruptions prédéfinies. Mais
l'instruction de script :SEND_SNMP_TRAP vous permet d'envoyer vos propres interruptions.
Pourquoi les interruptions n'apparaissent-elles pas dans la table MIB ?
Les interruptions sont directement transférées à l'Agent maître. Un enregistrement dans la MIB n'est donc
pas nécessaire.
Pourquoi les interruptions n'apparaissent-elles pas ?
Cela peut avoir différentes causes :
l
l
l
Vérifiez la valeur du paramètre processing= dans le fichier INI du sous-agent SNMP UC4. La valeur
"1" signifie qu'aucune interruption ne peut être envoyée à l'Agent maître.
L'ordinateur sur lequel l'Agent maître est exécuté doit être indiqué comme destination d'interruption.
Sous Windows, il faut entrer le nom de l'ordinateur dans le service SNMP de Windows. Sous
UNIX, il doit être indiqué dans le fichier snmpd.conf ou ucsnmp1.conf.
Le community name que vous avez indiqué dans le fichier INI du sous-agent SNMP UC4 pour le
paramètre community= doit correspondre à celui de l'Agent maître.
Qu'est-ce que Net-SNMP ?
Net-SNMP est un Serveur SNMP Open source sous UNIX.
Automation Engine
143
Quelle versions de SNMP sont prises en charge par le sous-agent SNMP UC4 ?
Pour UNIX : SNMP V1, SNMP V2c et SNMP V3
Pour Windows : SNMP V1 et SNMP V2c
Comment installer le sous-agent SNMP UC4 ultérieurement ?
Les instructions d'installation (UNIX et Windows) décrivent les étapes d'une installation ultérieure.
Comment savoir si le sous-agent SNMP UC4 a été correctement installé ?
Utilisez pour cela l'outil SNMP qui se trouve sur le CD, dans le fichier snmptools.zip du répertoire
Tools\no_supp. Il permet de lire la MIB, de recevoir et d'envoyer des interruptions, etc.
Attention : nous ne prenons PAS en charge l'outil SNMP !
Pourquoi le sous-agent SNMP UC4 ne réagit-il pas aux demandes de l'Agent-maître ?
Cela peut avoir différentes causes :
l
l
Le sous-agent SNMP UC4 n'est pas démarré ou le service SNMP n'est pas en cours d'exécution.
Le community name que vous avez indiqué dans le fichier INI du sous-agent SNMP UC4 pour le
paramètre community= doit correspondre à celui de l'Agent maître.
Pourquoi la table MIB n'est-elle pas complète ?
La structure arborescente de la MIB est créée dynamiquement. Si par exemple il n'y a pas de Tâche
bloquée ou d'objet Alerte actif, le sous-agent SNMP UC4 ne crée aucune structure pour ces domaines.
Si le Serveur UC4 n'est pas actif, seuls l'Agent Data Group et l'Agent Work Group sont créés et remplis
avec les valeurs.
Quelles configurations dois-je effectuer sur le Serveur SNMP (Net-SNMP, Service SNMP de
Windows ou mode Agent-maître) ?
l
l
l
l
l
Entrez un community name.
Il doit posséder au moins le droit de lecture.
Indiquez la destination des interruptions (nom d'hôte ou adresse IP).
Vérifiez si le réseau autorise l'accès au port UDP 161.
Si vous souhaitez recevoir des interruptions, l'accès au port UDP 162 doit également être autorisé.
Qu'est-ce qu'un community name ?
Un community name est un Groupe auquel vous pouvez attribuer des droits d'accès. Son nom par défaut
est "public".
Comment effectuer le suivi des Job par SNMP ?
UC4 ne prend en charge aucune connexion directe des Jobs à SNMP. Mais l'instruction de script :SEND_
SNMP_TRAP vous permet d'effectuer le suivi des Jobs.
Exemple :
:SET
:SET
:SET
:SET
:SET
&NOM# = SYS_ACT_ME_NAME()
&ID# = SYS_ACT_ME_NR()
&JPNOM# = SYS_ACT_PARENT_NAME()
&CLIENT# = SYS_ACT_CLIENT()
&STATUT# = GET_UC_OBJECT_STATUS()
:IF &STATUT# < "1900"
: PRINT &STATUT#
: PRINT "Client : &CLIENT#, JOBNAME : &NOM#"
: PRINT &NOM#
144
Chapter 6 Prise en charge SNMP
: SEND_SNMP_TRAP 801450, "&CLIENT#", "&NOM#",, "Problèmes dans le contrôle
du déroulement !"
:ENIDF
La fonction script GET_UC_OBJECT_STATUS vous permet de savoir avec quel statut un Job s'est
terminé et de réagir ensuite de façon appropriée. La solution peut être appliquée sous forme de script ou
d'objet Include réutilisable.
Rubriques connexes :
UC4 et SNMP
6.5 Installation
6.5.1 Installation du sous-Agent SNMP UC4 (UNIX)
Le document suivant contient les instructions d'installation UNIX pour le sous-agent SNMP UC4.
Attention : le sous-agent SNMP UC4 doit être installé sur un ordinateur contenant au moins un des
processus de travail de l'UC4 Automation Engine !
Prérequis
l
l
Le sous-agent SNMP UC4 et Net-SNMP doivent être installés et activés sur l'ordinateur sur lequel
l'UC4 Automation Engine est exécuté.
Exception faite de HP-UX : le sous-agent SNMP UC4 doit être ici utilisé comme Agent maître
SNMP si vous souhaitez utiliser EMANATE via naaagt. (Configuration de naaagt
http://docs.hp.com/en/B2355-90692/naaagt.1M.html)
Fichiers fournis
Les fichiers du sous-agent SNMP UC4 se trouvent dans le sous-dossier correspondant de la plate-forme
sur CD:SNMP\UNIX.
Nom du fichier
Description
ucsnmp1
Sous-Agent SNMP UC4.
ucsnmp1.ini
Fichier INI du sous-agent SNMP UC4
UC4Vers2-MIB.mib
Description de la MIB
ucsnmp1.conf
Fichier de configuration pour le mode Agent maître
naaacnf
Fichier de configuration pour l'interface naaagt (seulement HP-UX)
Automation Engine
145
Installation
1.
l
l
Installation des fichiers
Décompressez le fichier TAR du sous-agent SNMP UC4.
Copiez les fichiers décompressés dans un répertoire quelconque ou dans le dossier de l'UC4
Automation Engine.
2.
l
l
l
Configuration des fichiers INI
Activez la connexion SNMP dans le fichier INI de l'UC4 Automation Engine UCSRV.INI avec le
paramètre snmp=1 (section [GLOBAL]). Définissez également les paramètres snmp= et
snmpreconnect= (section [TCP/IP]).
Terminez et redémarrez ensuite les processus de communication et de travail de l'UC4 Automation
Engine sur tous les ordinateurs. Si le fichier INI de l'UC4 Automation Engine est déjà adapté, un
redémarrage n'est pas nécessaire.
Adaptez les paramètres du fichier INI du sous-agent SNMP UC4.
3.
l
l
l
l
l
Le mode Agent maître doit impérativement être défini sur HP-UX. Sur toutes les autres
plateformes, vous pouvez choisir d'exécuter le sous-agent SNMP UC4 en tant qu'Agent maître ou
non.
Configurez le mode Agent maître dans le fichier INI du sous-agent SNMP UC4 avec le paramètre
role=1.
Adaptez les fichiers de configuration fournis naacnf et ucsnmp1.conf.
La Variable SNMPCONFPATH doit être définie. Elle contient le répertoire dans lequel se trouve le
fichier ucsnmp1.conf (par exemple : "export SNMPCONFPATH=./").
Les variables d'environnement MIB et MIBDIR ne doivent pas être définies.
4.
l
l
Mode Agent maître
Démarrage du sous-agent SNMP UC4
Démarrez le sous-agent SNMP UC4 en indiquant le fichier INI.
Le sous-agent SNMP doit impérativement être démarré sous l'utilisateur racine, car sinon
l'Automation Engine ne pourra pas établir de connexion !
Exemple :
./ucsnmp1 -i /home/UC4/Server/ucsnmp1.ini &
Les paramètres de démarrage suivants s'appliquent :
Paramètres de
démarrage
Description
-iChemin et nom du
fichier INI
Chemin et nom du fichier INI devant être utilisé
Le fichier INI est recherché par défaut dans le dossier dans
lequel se trouve le sous-agent SNMP UC4.
-h
Affiche les paramètres disponibles et leur utilisation
-v
Affiche la version du sous-agent SNMP UC4
146
Chapter 6 Prise en charge SNMP
Paramètres de
démarrage
Description
-crtini Chemin et
nom du fichier INI
Crée un fichier INI standard
Le fichier INI est enregistré par défaut dans le dossier dans
lequel se trouve le sous-agent SNMP UC4.
L'ordre dans lequel l'UC4 Automation et le sous-agent SNMP sont démarrés n'a aucune importance.
Tenez compte à ce sujet des remarques suivantes :
l
l
l
l
Si le sous-agent SNMP UC4 a été démarré en premier, l'UC4 Automation Engine pourra
immédiatement se connecter au sous-agent SNMP lors du démarrage.
Si l'UC4 Automation Engine fonctionne déjà avec une connexion SNMP active (UCSRV.INI), cette
dernière tentera d'atteindre le sous-agent SNMP à intervalles réguliers (snmpreconnect=). Le
service SNMP peut également être démarré ultérieurement lorsque l'Automation Engine est en
cours.
Attention : les interruptions et tous les Evènements SNMP ne peuvent être envoyés au sous-agent
SNMP que si la connexion SNMP est active. Si la reconnexion n'est pas encore effectuée, les
Evènements affichés jusqu'ici seront perdus !
L'intervalle de temps dans lequel la reconnexion est effectuée doit être défini dans le fichier INI de
l'Automation Engine via le paramètre snmpreconnect= (valeur par défaut : 500 secondes)
Au démarrage de l'Agent SNMP, des messages s'affichent. Il ne s'agit pas d'erreurs, mais
d'avertissements. Une restriction de la fonctionnalité n'est donc pas indiquée. Par exemple, le message
suivant apparaît toujours et peut être ignoré : "No log handling enabled - turning on stderr logging"
6.5.2 Sous-Agent SNMP UC4 pour UNIX
Structure du fichier ucsnmp1.ini
Section/paramètre
Description
[SNMP]
community=
Community name SNMP
Valeur par défaut : "public"
La désignation est définie dans l'Agent maître. Entrez-y le même community
name. Le community name est disponible dans le fichier snmp.conf ou dans
le fichier ucsnmp1.conf si vous exploitez le sous-agent SNMP en tant
qu'Agent maître (voir les instructions d'installation).
medium=
Moyen de transport utilisé pour la communication entre l'UC4 Automation
Engine et le sous-agent SNMP UC4.
Valeur possible : "tcp" (valeur par défaut), "pipe"
"tcp" - communication via socket
"pipe" - communication via pipe (compatibilité vers le bas du sous-agent
SNMP : paramètre uniquement pour les systèmes UC4 des versions 5.00A
et 6.00A)
Automation Engine
Section/paramètre
Description
stream_port=
Numéro de port recevant la connexion de l'UC4 Automation Engine vers le
sous-agent SNMP UC4.
147
Attention, vous devez définir le même numéro de port dans le fichier INI
de l'UC4 Automation Engine sous le paramètre snmp= (section [TCP/IP]) !
snmp_string=
Si role=0 est défini, le chemin vers l'AgentX-Socket peut être défini ici pour
Net-SNMP.
processing=
Mode du sous-agent SNMP UC4
Valeurs autorisées : "1", "2" et "3" (valeur par défaut)
"1" : la MIB est remplie, mais les interruptions ne sont pas envoyées
"2" : la MIB n'est pas remplie, mais les interruptions sont envoyées
"3" : la MIB est remplie et les interruptions sont envoyées.
role=
Rôle du sous-agent SNMP UC4
Valeurs autorisées : "0" (valeur par défaut) et "1"
"0" : le sous-agent SNMP UC4 est démarré en tant que sous-agent.
"1" : le sous-agent SNMP UC4 est démarré en tant qu'Agent maître. En
mode Agent maître, aucun autre sous-agent ne peut établir de connexion au
mode.
Attention : le mode Agent maître est absolument nécessaire sur HP-UX
pour pouvoir établir une connexion avec EMANATE via naaagent.
[LOG]
snmp=
stream=
mib=
Indicateur de trace pour l'édition de messages de trace à partir du module qui
lit les données de la table MIB et les envoie au réseau.
Valeurs autorisées : "0" à "9"
Valeur par défaut : "1"
Les indicateurs de trace ne doivent être définis qu'après accord définitif
du support !
stream=
Indicateur de trace pour l'édition de messages de trace à partir du module qui
lit les données de la table MIB et les envoie au réseau.
Valeurs autorisées : "0" à "9"
Valeur par défaut : "1"
Les indicateurs de trace ne doivent être définis qu'après accord définitif
du support !
mib=
Indicateur de trace pour l'édition de messages de trace à partir du module qui
lit les données de la table MIB et les envoie au réseau.
Valeurs autorisées : "0" à "9"
Valeur par défaut : "1"
Les indicateurs de trace ne doivent être définis qu'après accord définitif
du support !
148
Chapter 6 Prise en charge SNMP
Section/paramètre
Description
file=
Chemin et nom du fichier log.
Les caractères numériques servent de caractère de remplacement pour une
numérotation croissante. Au démarrage du sous-agent SNMP, les fichiers
log sont renommés de telle manière que le fichier log actuel ait toujours le
numéro "00".
Le fichier log est créé par défaut dans le dossier à partir duquel est
démarré le sous-agent SNMP UC4.
Exemple de fichier INI
[SNMP]
community=public
medium=tcp
stream_port=2200
snmp_string=/var/agentx/master
processing=3
role=0
lib_path=.
[LOG]
snmp=1
stream=1
mib=1
file=ucsnmp_##.log
Rubriques connexes :
Conseils d'adaptation des fichiers de configuration
6.5.3 Installation du sous-Agent SNMP UC4 (Windows)
Le document suivant contient les instructions d'installation Windows pour le sous-agent SNMP UC4.
Prérequis
l
l
Le sous-agent SNMP UC4 et le service SNMP Windows doivent être installés et activés sur la
machine sur laquelle s'exécute UC4 Automation Engine.
Si le sous-agent SNMP UC4 ne peut pas démarrer sous Windows Vista ou Windows Server
2008 et que dans le log d'évènement Windows, le message d'erreur "SNMP Extension Agent has
terminated. Event 2020, EvntAgnt" est journalisé, le patch Windows KB950923 doit être installé.
Fichiers fournis
Les données du sous-agent SNMP UC4 se trouvent dans le sous-dossier correspondant de la plate-forme
sur CD:SNMP\WINDOWS.
Automation Engine
Nom du fichier
Description
UCSNMP1.DLL
Sous-Agent SNMP UC4.
UCSNMP1.INI
Fichier INI du sous-agent SNMP UC4
UC4VERS2-MIB.MIB
Description de la MIB
149
Installation
Le sous-agent SNMP UC4 peut être mis en place lors de l'installation d'UC4 Automation Engine ou
ultérieurement.
1.
l
l
Installation des fichiers
Exécutez le programme d'installation du sous-agent SNMP UC4. Une autre possibilité consiste à
copier manuellement la bibliothèque UCSNMP1.DLL et le fichier INI UCSNMP1.INI dans le
répertoire %WINDIR%\System32.
Enregistrez la bibliothèque dans la base de données du registre :
[HKEY_LOCAL_MACHINE\SOFTWARE\UC4\SnmpAgent\Vers1]
"Pathname"="UCSnmp1.dll"
[HKEY_LOCAL_
MACHINE\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ExtensionAgents]
"10"="SOFTWARE\\UC4\\SnmpAgent\\Vers1"
2.
l
l
l
l
l
Activez la connexion SNMP dans le fichier INI de l'UC4 Automation Engine UCSRV.INI avec le
paramètre snmp=1 (section [GLOBAL]). Définissez également les paramètres snmp= et
snmpreconnect= (section [TCP/IP]).
Terminez et redémarrez ensuite les processus de communication et de travail de l'UC4 Automation
Engine sur tous les ordinateurs. Si le fichier INI de l'UC4 Automation Engine est déjà adapté, un
redémarrage n'est pas nécessaire.
Configurez le service Windows SNMP.
Adaptez les paramètres du fichier INI du sous-agent SNMP UC4.
Le sous-agent SNMP UC4 utilise le chemin des Variables d'environnement système UC_SNMP_
INI de Windows afin d'accéder aux fichiers INI. Si la Variable requise n'est pas disponible, elle est
recherchée dans le répertoire d'installation du sous-agent SNMP UC4. Au cas où le fichier INI ne
serait pas inclus, les valeurs par défaut des paramètres sont acceptées.
3.
l
Configuration des fichiers INI
Démarrage du sous-agent SNMP UC4
Redémarrez le service Windows SNMP. Le sous-agent SNMP UC4 est automatiquement démarré
par le service SNMP de Windows.
L'ordre dans lequel l'UC4 Automation et le sous-agent SNMP sont démarrés n'a aucune importance.
Tenez compte à ce sujet des remarques suivantes :
150
Chapter 6 Prise en charge SNMP
l
l
l
l
Si le sous-agent SNMP UC4 a été démarré en premier, l'UC4 Automation Engine pourra
immédiatement se connecter au sous-agent SNMP lors du démarrage.
Si l'UC4 Automation Engine fonctionne déjà avec une connexion SNMP active (UCSRV.INI), cette
dernière tentera d'atteindre le sous-agent SNMP à intervalles réguliers (snmpreconnect=). Le
service SNMP peut également être démarré ultérieurement lorsque l'Automation Engine est en
cours.
Attention : les interruptions et tous les Evènements SNMP ne peuvent être envoyés au sous-agent
SNMP que si la connexion SNMP est active. Si la reconnexion n'est pas encore effectuée, les
Evènements affichés jusqu'ici seront perdus !
L'intervalle de temps dans lequel la reconnexion est effectuée doit être défini dans le fichier INI de
l'Automation Engine via le paramètre snmpreconnect= (valeur par défaut : 500 secondes)
La version des interruptions SNMP est déterminée par l'Agent maître (service Windows).
6.5.4 Sous-Agent SNMP UC4 pour Windows
Structure du fichier ucsnmp1.ini
Section/paramètre
Description
[SNMP]
community=
Community name SNMP
Valeur par défaut : "public"
La désignation est définie dans l'Agent maître. Entrez-y le même community
name. Le paramétrage du community name est disponible dans les
propriétés du services SNMP de Windows.
medium=
Moyen de transport utilisé pour la communication entre l'UC4 Automation
Engine et le sous-agent SNMP UC4.
Valeur possible : "tcp" (valeur par défaut), "pipe"
"tcp" - communication via socket
"pipe" - communication via pipe (compatibilité vers le bas du sous-agent
SNMP : paramètre uniquement pour les systèmes UC4 des versions 5.00A
et 6.00A)
stream_port=
Numéro de port recevant la connexion de l'UC4 Automation Engine vers le
sous-agent SNMP UC4.
Attention, vous devez définir le même numéro de port dans le fichier INI
de l'UC4 Automation Engine sous le paramètre snmp= (section [TCP/IP]) !
processing=
Mode du sous-agent SNMP UC4
Valeurs autorisées : "1", "2" et "3" (valeur par défaut)
"1" : la MIB est remplie, mais les interruptions ne sont pas envoyées
"2" : la MIB n'est pas remplie, mais les interruptions sont envoyées
"3" : la MIB est remplie et les interruptions sont envoyées.
[LOG]
Automation Engine
151
Section/paramètre
Description
snmp=
Indicateur de trace pour l'édition de messages de trace à partir du module qui
lit les données de la table MIB et les envoie au réseau.
Valeurs autorisées : "0" à "9"
Valeur par défaut : "1"
Les indicateurs de trace ne doivent être définis qu'après accord définitif
du support !
stream=
Indicateur de trace pour l'édition de messages de trace à partir du module qui
lit les données de la table MIB et les envoie au réseau.
Valeurs autorisées : "0" à "9"
Valeur par défaut : "1"
Les indicateurs de trace ne doivent être définis qu'après accord définitif
du support !
mib=
Indicateur de trace pour l'édition de messages de trace à partir du module qui
lit les données de la table MIB et les envoie au réseau.
Valeurs autorisées : "0" à "9"
Valeur par défaut : "1"
Les indicateurs de trace ne doivent être définis qu'après accord définitif
du support !
file=
Chemin et nom du fichier log.
Les caractères numériques servent de caractère de remplacement pour une
numérotation croissante. Au démarrage du sous-agent SNMP, les fichiers
log sont renommés de telle manière que le fichier log actuel ait toujours le
numéro "00".
Le fichier log est créé par défaut dans le dossier à partir duquel est
démarré le sous-agent SNMP UC4.
Exemple de fichier INI
[SNMP]
community=public
medium=tcp
stream_port=2200
processing=3
[LOG]
snmp=1
stream=1
mib=1
file=ucsnmp_##.log
Rubriques connexes :
Conseils d'adaptation des fichiers de configuration
152
Chapter 6 Prise en charge SNMP
6.5.5 Configuration du service SNMP de Windows
La description suivante explique la configuration du service SNMP de Windows.
Prérequis
l
Le service SNMP de Windows doit être installé.
Déroulement
l
Ouvrez les propriétés du service SNMP de Windows.
Allez dans l'onglet "Interruptions". Entrez un community name et ajoutez l'ordinateur sur lequel la
gestion SNMP est installée.
l
Allez dans l'onglet "Sécurité". Ajoutez le droit de lecture du community name.
l
Automation Engine
153
Rubriques connexes :
Installation du sous-Agent SNMP UC4 (Windows)
6.6 MIB
6.6.1 Structure de la MIB
La branche enregistrée de l'arborescence de la MIB est la suivante pour la société UC4 et son produit
UC4 1.3.6.1.4.1.2562.1.1 = iso.org.dod.internet.private.enterprises.sbb.uc4.vers1. Cette adresse
est donc la racine de la sous-arborescence de UC4.
154
Chapter 6 Prise en charge SNMP
Les ID MIB, identifiant les informations de UC4, sont indiqués sous une forme "relative". L'ID MIB 3.10.0
représente l'adresse complète 1.3.6.1.4.1.2562.1.1.3.10.0.
La sous-arborescence de UC4 dans la MIB se structure en plusieurs groupes fonctionnels.
ID MIB
Description
1
Agent Data Group
2
Agent Control Group
3
Agent Work Group
4
System Group
5
Client Group
6
Server Group
7
Executor Group
8
Blocking Point Group
9
CallOperator Group
à partir de la version 8.00A, la plupart des éléments UC4 font l'objet d'une nouvelle terminologie. Les
descriptions dans la MIB n'ont cependant pas été modifiées, pour éviter toute incompatibilité.
6.6.2 Agent Data Group
ID MIB
1
Descripteur
Agent Data Group
Durée de vie
Ce groupe est toujours disponible.
Relations
Sous-agent SNMP UC4.
Description
Ce groupe sert à décrire le sous-agent SNMP UC4.
ID MIB
1.1.0
Descripteur
agentVersion
Type
DisplayString (SIZE (0.00,5))
Description
Version du sous-agent SNMP UC4.
Automation Engine
ID MIB
1.2.0
Descripteur
agentStartTime
Type
DisplayString (SIZE (0.00,30))
Description
Heure de début du sous-agent SNMP UC4 au format "AAAAMMJJ HHMMSS".
ID MIB
1.3.0
Descripteur
agentNumberOfServerTasks
Type
INTEGER
Description
Nombre actuel de processus serveur actifs.
ID MIB
155
1.4.0
Descripteur agentConnectCounter
Type
Counter
Description Nombre de processus serveur qui avaient déjà une connexion au sous-agent SNMP
(valeur historique).
6.6.3 Agent Control Group
ID MIB
2
Descripteur
Agent Control Group
N'est pas encore utilisé à l'heure actuelle.
6.6.4 Agent Work Group
L'Agent Work Group ne concerne pas les Agents, mais le sous-agent SNMP UC4.
ID MIB
3
Descripteur Agent Work Group
Durée de
vie
Ce groupe est toujours disponible.
Relations
Système UC4, désigné agentWorkSysID.
Description Ce groupe sert de domaine de travail pour la génération d'interruptions SNMP. Il contient
les valeurs de la dernière interruption générée.
156
Chapter 6 Prise en charge SNMP
ID MIB
3.1.0
Descripteur
agentWorkSysID
Type
DisplayString (SIZE (0.00,8))
Description
Variable de travail pour la génération d'interruptions (interne au sous-agent).
ID MIB
3.2.0
Descripteur
agentWorkObject
Type
DisplayString (SIZE (0.0,255))
Description
Variable de travail pour la génération d'interruptions (interne au sous-agent).
ID MIB
3.3.0
Descripteur
agentWorkString1
Type
DisplayString (SIZE (0.0,255))
Description
Variable de travail pour la génération d'interruptions (interne au sous-agent).
ID MIB
3.4.0
Descripteur
agentWorkString2
Type
DisplayString (SIZE (0.0,255))
Description
Variable de travail pour la génération d'interruptions (interne au sous-agent).
ID MIB
3.5.0
Descripteur
agentWorkString3
Type
DisplayString (SIZE (0.0,255))
Description
Variable de travail pour la génération d'interruptions (interne au sous-agent).
ID MIB
3.6.0
Descripteur
agentWorkString4
Type
DisplayString (SIZE (0.0,255))
Description
Variable de travail pour la génération d'interruptions (interne au sous-agent).
ID MIB
3.7.0
Descripteur
agentWorkString5
Type
DisplayString (SIZE (0.0,255))
Description
Variable de travail pour la génération d'interruptions (interne au sous-agent).
Automation Engine
ID MIB
3.8.0
Descripteur
agentWorkInteger1
Type
INTEGER
Description
Variable de travail pour la génération d'interruptions (interne au sous-agent).
ID MIB
3.9.0
Descripteur
agentWorkInteger2
Type
INTEGER
Description
Variable de travail pour la génération d'interruptions (interne au sous-agent).
ID MIB
3.10.0
Descripteur
agentWorkInteger3
Type
INTEGER
Description
Variable de travail pour la génération d'interruptions (interne au sous-agent).
ID MIB
3.11.0
Descripteur
agentWorkInteger4
Type
INTEGER
Description
Variable de travail pour la génération d'interruptions (interne au sous-agent).
ID MIB
3.12.0
Descripteur
agentWorkInteger5
Type
INTEGER
Description
Variable de travail pour la génération d'interruptions (interne au sous-agent).
157
6.6.5 System Group
ID MIB
4
Descripteur System Group
Durée de
vie
Le système UC4 démarre lorsque le premier processus de service de ce système
démarre.
Même si tous les serveurs UC4 sont inactifs, le système UC4 reste dans la MIB jusqu'au
nouveau chargement du sous-agent SNMP.
Relations
Sous-agent SNMP UC4.
Description Ce groupe contient la description des systèmes UC4. Il existe une entrée dans les tables
suivantes pour chaque système UC4.
158
Chapter 6 Prise en charge SNMP
ID MIB
4.1
Descripteur
systemTable
Type
SEQUENCE OF SystemEntry
Index
(sysSysID)
Description
Cette table contient tous les systèmes UC4 démarrés.
ID MIB
4.1.1
Descripteur systemEntry
Type
SystemEntry
Description Contient tous les systèmes UC4 connectés tant que le sous-agent SNMP est actif sur
cette machine.
ID MIB
4.1.1.1
Descripteur
sysSysID
Type
DisplayString (SIZE (0.00,8))
Description
Nom du système UC4.
Valeur du paramètre "system=" lue dans le fichier INI d'UC4 Automation Engine.
ID MIB
4.1.1.2
Descripteur
sysStartTime
Type
DisplayString (SIZE (0.00,19))
Description
Heure de début du premier processus de serveur de ce système.
ID MIB
4.1.1.3
Descripteur
sysDbmsName
Type
DisplayString (SIZE (0.00,30))
Description
Nom de produit de la base de données UC4 (Oracle 7, Microsoft SQL Server 7, etc.).
ID MIB
4.1.1.4
Descripteur
sysDbVersion
Type
DisplayString (SIZE (0.00,30))
Description
Version de la base de données UC4.
Automation Engine
ID MIB
4.1.1.5
Descripteur
sysDbName
Type
DisplayString (SIZE (0.00,30))
Description
Nom de la base de données qui est fournie avec le logiciel de base de données.
ID MIB
4.1.1.6
Descripteur
sysEMS
Type
INTEGER
Contenu
1 = BMC Patrol
2 = HP NNM
3 = BMC Patrol + HP NNM
4 = Tivoli
5 = BMC Patrol + Tivoli
6 = BMC Patrol + HP NNM
7 = tous
Description
Barre de bits pour l'affichage des licences disponibles.
159
6.6.6 Client Group
ID MIB
5
Descripteur Client Group
Description Ce groupe contient la description des Clients de tous les systèmes UC4. Il existe une
entrée dans la table suivante pour chaque Client d'un système existant.
ID MIB
5.1
Descripteur
ClientTable
Type
SEQUENCE OF ClientEntry
Index
(cliSysID, cliClient)
Description
Cette table contient tous les Clients existants.
ID MIB
5.1.1
Descripteur ClientEntry
Type
ClientEntry
Durée de
vie
Si un processus de serveur démarre, une entrée est créée dans le tableau pour chaque
Client. Si un Client est rajouté ou supprimé, ou si le statut (cliState) d'un Client se modifie,
la table est supprimée et reconstruite avec les Clients existants.
Relations
UC4-System cliSysID
160
Chapter 6 Prise en charge SNMP
ID MIB
5.1.1.1
Descripteur
cliSysID
Type
DisplayString (SIZE (0.00,8))
Description
Nom du système UC4 auquel le Client appartient.
ID MIB
5.1.1.2
Descripteur
cliClient
Type
INTEGER (0..9999)
Description
Numéro du Client.
ID MIB
5.1.1.3
Descripteur
cliLastModifyTime
Type
DisplayString (SIZE (0.00,19))
Description
Marque horaire du dernier rafraîchissement de l'entrée de la table.
ID MIB
5.1.1.4
Descripteur cliState
Type
INTEGER {run(1), stop(2)}
Contenu
1 = acktif
2 = arrêté
Description Indique si le traitement automatique des Tâches est actif (statut système GO) ou s'il a été
arrêté (statut système STOP).
ID MIB
5.1.1.5
Descripteur cliMonitoring
Type
INTEGER {yes(1), no(2)}
Contenu
1 = surveillance des activités du Client
2 = aucune surveillance des activités du Client
Description Indique si les activités du Client sont surveillées. Dans le cas d'un Client productif, toutes
les Alertes actives et tous les Workflows bloqués sont surveillés.
ID MIB
5.1.1.6
Descripteur
cliInfo
Type
DisplayString
N'est pas encore utilisé à l'heure actuelle.
Automation Engine
161
6.6.7 Server Group
ID MIB
6
Descripteur
Server Group
Durée de vie
Il existe une entrée dans le tableau suivant pour chaque processus de
serveur d'un système UC4 disponible. Les processus de serveur
arrêtés restent également (statut = STOPPED) dans la MIB jusqu'à ce
que le sous-agent SNMP soit chargé à nouveau sur la machine.
Description
Ce groupe contient la description des processus de service de tous les
systèmes UC4.
ID MIB
6.1
Descripteur
serverInstanceTable
Type
SEQUENCE OF serverInstancEntry
Index
(srvSysID, srvName)
Description
Ce tableau contient tous les processus de services existants.
ID MIB
6.1.1
Descripteur serverInstanceEntry
Type
ServerInstanceEntry
Durée de
vie
Si un processus de serveur démarre, une entrée est créée dans le tableau pour celui-ci.
Cette entrée n'est plus supprimée.
Relations
Système UC4 coSysID et Client coClient.
ID MIB
6.1.1.1
Descripteur
srvSysID
Type
DisplayString (SIZE (0.00,8))
Description
Nom du système UC4 auquel appartient le processus de service.
Valeur du paramètre "system=" lue dans le fichier INI d'UC4 Automation Engine.
ID MIB
6.1.1.2
Descripteur
srvName
Type
DisplayString (SIZE (0.00,8))
Description
Nom du processus de travail primaire.
ID MIB
6.1.1.3
162
Chapter 6 Prise en charge SNMP
Descripteur
srvLastModifyTime
Type
DisplayString (SIZE (0.00,19))
Description
Marque horaire du dernier rafraîchissement de l'entrée de la table.
ID MIB
6.1.1.4
Descripteur
srvVersion
Type
DisplayString (SIZE (0.00,5))
Description
Version du moteur d'utilisation UC4.
ID MIB
6.1.1.5
Descripteur
srvStartTime
Type
DisplayString (SIZE (0.00,19))
Description
Point de démarrage du processus serveur.
ID MIB
6.1.1.6
Descripteur
srvState
Type
INTEGER {run(1), ended(2), abnormal(3)}
Contenu
1 = actif
2 = terminé normalement
3 = interrompu ou aucune connexion au sous-agent SNMP
Description
Statut du processus serveur.
ID MIB
6.1.1.7
Descripteur srvSrvConnect
Type
INTEGER
Description Nombre de processus serveurs connectés au processus de travail primaire (les entrées
n'existent que dans les processus de travail primaires).
ID MIB
6.1.1.8
Descripteur
srvExeConnect
Type
INTEGER
Description
Nombre d'Agents connectés au UC4 Automation Engine.
ID MIB
6.1.1.9
Descripteur
srvDiaConnect
Automation Engine
Type
INTEGER
Description
Nombre d'Interfaces Utilisateur connectées aux processus de communication.
ID MIB
163
6.1.1.10
Descripteur srvBusyMin
Type
INTEGER (0.0,100)
Description Utilisation moyenne du processus serveur en pourcentage au cours de la dernière minute
avant le rafraîchissement (valeur statistique).
ID MIB
6.1.1.11
Descripteur srvBusy10Min
Type
INTEGER (0.0,100)
Description Utilisation moyenne du processus serveur en pourcentage au cours des 10 dernières
minutes avant le rafraîchissement (valeur statistique).
ID MIB
6.1.1.12
Descripteur SrvBusyHour
Type
INTEGER (0.0,100)
Description Utilisation moyenne du processus serveur en pourcentage au cours de la dernière heure
avant le rafraîchissement (valeur statistique).
ID MIB
6.1.1.13
Descripteur
SrvRunMode
Type
INTEGER {primary(1), normal(3), cp(4)}
Contenu
1 = Processus de travail primaire
3 = Processus de travail
4 = Processus de communication
Description
Indique le mode dans lequel travaille le processus serveur.
ID MIB
6.1.1.14
Descripteur
SrvDBState
Type
INTEGER {online(1), offline(2)}
Contenu
1 = le UC4 Automation Engine est connecté avec la base de données UC4
2 = le UC4 Automation Engine n'est pas connecté à la base de données UC4
Description
Indique si le UC4 Automation Engine est connecté à la base de données UC4.
164
Chapter 6 Prise en charge SNMP
ID MIB
6.1.1.15
Descripteur
SrvDBState
Type
INTEGER (1)
Contenu
1 = SDB fonctionne correctement
Description
Informe sur la disponibilité de la base de données de statuts (SDB).
6.6.8 Executor Group
ID MIB
7
Descripteur Executor Group
Durée de
vie
Il existe une entrée dans la table suivante pour chaque Agent d'un système UC4. S'il
existe plusieurs processus serveur UC4 au sein du système, alors des entrées d'Agent
sont faites pour chacun de ces processus serveur UC4.
Description Ce groupe contient la description des Agents de tous les systèmes UC4.
ID MIB
7.1
Descripteur
exekutorTable
Type
SEQUENCE OF exekutorEntry
Index
(exeSysID, exeSrvName, exeName, exeType)
Description
Cette table contient tous les Agents.
ID MIB
7.1.1
Descripteur exekutorEntry
Type
ExekutorEntry
Durée de
vie
Si un processus serveur démarre, une entrée est créée dans le tableau pour chaque Agent
connu du système. Si des Agents sont rajoutés ou supprimés, ou si leur statut est modifié
(exeState), alors la table est entièrement supprimée et reconstruite pour chaque Agent
existant dans le système.
Relations
Système UC4exeSysID et processus serveur exeSrvName.
ID MIB
7.1.1.1
Descripteur
exeSysID
Type
DisplayString (SIZE (0.00,8))
Description
Nom du système UC4 avec lequel l'Agent a établi la connexion UC4.
Valeur du paramètre "system=" lue dans le fichier INI d'UC4 Automation Engine.
Automation Engine
ID MIB
7.1.1.2
Descripteur
exeSrvName
Type
DisplayString (SIZE (0.00,8))
Description
Nom du processus de travail primaire auquel l'Agent est connecté.
ID MIB
7.1.1.3
Descripteur
exeName
Type
DisplayString (SIZE (0.00,8))
Description
Nom de l'Agent.
Valeur du paramètre "name=" lue dans le fichier INI de l'Agent.
ID MIB
7.1.1.4
Descripteur
exeType
Type
DisplayString (SIZE (0.00,8))
Description
Type de l'Agent (EX_JOB).
ID MIB
7.1.1.5
Descripteur
exeLastModifyTime
Type
DisplayString (SIZE (0.00,19))
Description
Marque horaire du dernier rafraîchissement de l'entrée de la table.
ID MIB
7.1.1.6
Descripteur
exeHost
Type
DisplayString (SIZE (0.00,8))
Description
Nom de l'Agent.
Valeur du paramètre "name=" lue dans le fichier INI de l'Agent.
ID MIB
7.1.1.7
Descripteur
exeVersion
Type
DisplayString (SIZE (0.00,5))
Description
Version de l'Agent.
ID MIB
7.1.1.8
Descripteur
exeHardware
Type
DisplayString (SIZE (0.00,20))
165
166
Chapter 6 Prise en charge SNMP
Description
Type de CPU que l'Agent détermine à partir des variables d'environnement.
ID MIB
7.1.1.9
Descripteur
exeSoftware
Type
DisplayString (SIZE (0.00,20))
Description
Système d'exploitation que l'Agent détermine à partir des variables d'environnement.
ID MIB
7.1.1.10
Descripteur exeSoftwareVers
Type
DisplayString (SIZE (0.00,20))
Description Version du système d'exploitation que l'Agent détermine à partir des variables
d'environnement.
ID MIB
7.1.1.11
Descripteur
exeJCLTyp
Type
DisplayString (SIZE (0.00,8))
Description
Job Control Language (JCL) utilisé pour la génération des Jobs.
Valeur du paramètre "UC_HOST_JCL_VAR" à partir du fichier INI de l'Agent.
ID MIB
7.1.1.12
Descripteur exeConnTime
Type
DisplayString (SIZE (0.00,19))
Description Marque horaire du dernier établissement d'une connexion de l'Agent avec le UC4
Automation Engine.
ID MIB
7.1.1.13
Descripteur exeState
Type
INTEGER {run(1), ended(2), lost(3), timeout(4)}
Contenu
1 = actif
2 = terminé normalement ou pas encore démarré
3 = connexion au UC4 Automation Engine interrompue
4 = aucune réponse malgré la connexion existante
5 = objet Agent supprimé
Description Marque horaire du dernier établissement d'une connexion de l'Agent avec le UC4
Automation Engine.
Automation Engine
ID MIB
7.1.1.14
Descripteur
exeLastPing
Type
DisplayString (SIZE (0.00,19))
Description
Marque horaire du dernier signe de vie de l'Agent.
ID MIB
167
7.1.1.15
Descripteur exeMonitoring
Type
INTEGER {yes(1), no(2)}
Contenu
1 = la disponibilité de l'Agent est surveillée.
2 = la disponibilité de l'Agent n'est pas surveillée.
Description Montre si la disponibilité de l'Agent est surveillée. Une surveillance est importante dans un
Agent de production.
ID MIB
7.1.1.16
Descripteur
exeInfo
Type
DisplayString
Description
N'est pas encore utilisé à l'heure actuelle.
6.6.9 Blocking Point Group
ID MIB
8
Descripteur Blocking Point Group Durée de
vie
Il existe une entrée dans la table suivante pour chaque tâche bloquante. L'entrée de la
table existe tant que le blocage n'est pas éliminé ou que le Workflow n'est pas interrompu.
Description Ce groupe contient la description de toutes les tâches bloquées. La description contient
des informations sur la tâche à l'origine du blocage et sur le Workflow qui s'en est retrouvé
bloqué.
ID MIB
8.1
Descripteur
blockingPointsTable
Type
SEQUENCE OF blockingPointEntry
Index
(blkSysID, blkClient, blkJPRunNr, blkJPLNR)
Description
Cette table contient toutes les tâches bloquantes dans les systèmes UC4.
ID MIB
8.1.1
Descripteur blockingPointEntry
168
Chapter 6 Prise en charge SNMP
Type
BlockingPointEntry
Durée de
vie
L'entrée est créée lorsqu'une tâche est bloquée et est conservée jusqu'à poursuite ou
interruption de la tâche.
Durée de
vie
Système UC4 dans blkSysID
ID MIB
8.1.1.1
Descripteur
blkSysID
Type
DisplayString (SIZE (0.00,8))
Description
Nom du système UC4 dans lequel le blocage est survenu.
ID MIB
8.1.1.2
Descripteur
blkClient
Type
INTEGER (0..9999)
Description
Numéro du Client dans lequel le blocage est survenu.
ID MIB
8.1.1.3
Descripteur
blkJPRunNr
Type
INTEGER
Description
Numéro courant (RunID) du Workflow dans lequel le blocage est survenu.
ID MIB
8.1.1.4
Descripteur
blkJPLNR
Type
INTEGER
Description
Numéro de la ligne dans laquelle se trouve la tâche bloquante au sein du Workflow.
ID MIB
8.1.1.5
Descripteur
blkLastModifyTime
Type
DisplayString (SIZE (0.00,19))
Description
Marque horaire du dernier rafraîchissement de l'entrée de la table.
ID MIB
8.1.1.6
Descripteur
blkJPName
Type
DisplayString (SIZE (0.00,200))
Description
Nom du Workflow bloqué.
Automation Engine
ID MIB
8.1.1.7
Descripteur
blkObjTyp
Type
DisplayString (SIZE (0.00,8))
Description
Type d'objet de la Tâche qui a déclenché le blocage.
ID MIB
8.1.1.8
Descripteur
blkObjName
Type
DisplayString (SIZE (0.00,200))
Description
Nom de la tâche qui a déclenché le blocage.
ID MIB
8.1.1.9
Descripteur
blkObjRunNr
Type
INTEGER
Description
Numéro courant (RunID) de la tâche qui a déclenché le blocage.
6.6.10 CallOperator Group
ID MIB
9
Descripteur
CallOperator Group
Durée de vie
L'entrée de la table reste tant que l'Alerte n'a pas été confirmée.
Description
Cette table contient tous les objets Alerte actifs.
ID MIB
9.1
Descripteur
callOperatorTable Type
SEQUENCE OF CallOperatorEntry
Index
(coSysID, coClient, coRunNr)
Description
Cette table contient tous les objets Alerte actifs.
ID MIB
9.1.1
Descripteur
callOperatorEntry Type
CallOperatorEntry
Durée de vie
L'envoi d'une interruption d'Alerte à UC4 génère une entrée.
La modification du statut de l'Alerte actualise l'entrée.
L'entrée est supprimée lorsque l'Alerte est confirmée.
169
170
Chapter 6 Prise en charge SNMP
Relations
Système UC4 coSysID et Client coClient.
ID MIB
9.1.1.1
Descripteur
coSysID Type
DisplayString (SIZE (0.00,8))
Description
Nom du système UC4 dans lequel l'objet Alerte a été activé.
ID MIB
9.1.1.2
Descripteur
coClient Type
INTEGER (0..9999)
Description
Numéro du Client dans lequel l'objet Alerte a été activé.
ID MIB
9.1.1.3
Descripteur
coRunNr Type
INTEGER
Description
Numéro courant (RunID) de l'objet Alerte.
ID MIB
9.1.1.4
Descripteur
coLastModifyTime Type
DisplayString (SIZE (0.00,19))
Description
Marque horaire du dernier rafraîchissement de l'entrée de la table.
ID MIB
9.1.1.5
Descripteur
coName Type
DisplayString (SIZE (0.00,200))
Description
Nom de l'objet Alerte.
ID MIB
9.1.1.6
Descripteur
coTyp Type
INTEGER {question(1), message(2), alarm(3)}
Contenu
1 = Requête
2 = Alerte
3 = Alarme
Description
Type d'Alerte
Automation Engine
ID MIB
9.1.1.7
Descripteur
coText Type
DisplayString (SIZE (0.0,255))
Description
Texte du message d'Alerte.
ID MIB
9.1.1.8
Descripteur
coState
Type
INTEGER
Contenu
1542 = informé - exécution de l'Alerte
1556 = escaladé - Alerte escaladée
1553 = accepté - Alerte acceptée
Description
Statut actuel de l'Alerte
171
6.6.11 Interruptions SNMP générées
Pour notifier activement le système de gestion des changements de statut ou des statuts particuliers
d'UC4, le UC4 Automation Engine génère des interruptions SNMP utilisant des codes d'interruptions
clairement définis. Le UC4 Automation Engine pour Windows peut, outre l'interruption, générer un
Evènement qui s'affiche dans le protocole d'application de l'affichage d'évènements de Windows. Pour
ce faire, le paramètre snmp=2 doit être défini dans le fichier INI d'UC4 Automation Engine.
Résumé des interruptions
Code d'interruption
Description
3400
Démarrage d'un processus serveur
3401
Fin d'un processus serveur
3410
Interruption d'un processus serveur
3536
Grave erreur lors de l'accès à la base de données UC4
3538
Connexion à la base de données UC4 à nouveau établie
11603
Fermeture d'un Agent
11604
Démarrage à froid d'un Agent
11622
Démarrage à chaud d'un Agent
11650
Coupure de la connexion à un Agent
11652
L'Agent SAP n'est plus connecté au système SAP
11662
L'Agent SAP a rétabli la connexion au système SAP
11801
Erreur système d'un processus serveur.
11818
Le serveur primaire a changé
801450
Message d'une Alerte
xxxxxx
Interruptions SNMP définies par l'Utilisateur
172
Chapter 6 Prise en charge SNMP
Description des interruptions
Chacune des interruptions SNMP ainsi que les paramètres correspondants sont décrits ci-après.
Code d'interruption
3400
Description
Démarrage d'un processus serveur
AgentWorkSysID
Nom du système UC4
AgentWorkObject
"Nom du système UC4"."Nom du processus serveur"
AgentWorkInteger1
Statut du processus serveur :
1 = actif
AgentWorkInteger2
Mode actuel du processus serveur :
1 = primaire
3 = normal
4 = processus de communication
Code
d'interruption
3401
Description
Fin d'un processus de travail ou de dialogue (quelle que soit l'origine), c'est à dire
fin normale du processus de travail primaire.
AgentWorkSysID
Nom du système UC4
AgentWorkObject
"Nom du système UC4"."Nom du processus serveur"
AgentWorkInteger1 Statut du processus serveur :
2 = terminé normalement
AgentWorkInteger2 Mode actuel du processus serveur :
1 = primaire
3 = normal
4 = processus de communication
Code
d'interruption
3410
Description
Interruption du processus de travail primaire (PWP).
Remarque
En plus de l'interruption, un Evènement est toujours généré dans le protocole
d'application de l'affichage d'évènements de Windows. Cette entrée est effectuée
dans le protocole d'application, que snmp=2 ait été défini ou non dans le fichier INI
d'UC4 Automation Engine.
AgentWorkSysID
Nom du système UC4
AgentWorkObject
"Nom du système UC4"."Nom du processus serveur"
AgentWorkInteger1 Statut du processus serveur :
2 = signal d'interruption reçu
3 = autre interruption
AgentWorkInteger2 Mode actuel du processus serveur :
1 = primaire
3 = normal
4 = processus de communication
Automation Engine
Code
d'interruption
3536
Description
Grave erreur lors de l'accès à la base de données UC4. Aucun accès n'est plus
possible.
Remarque
Cette interruption est envoyée toutes les 10 secondes jusqu'à ce que la base de
données soit à nouveau connectée.
AgentWorkSysID
Nom du système UC4
AgentWorkObject
"Nom du système UC4"."Nom du processus serveur"
AgentWorkString1 Texte d'erreur des pilotes ODBC
Code d'interruption
3538
Description
Connexion à la base de données UC4 à nouveau établie
AgentWorkSysID
Nom du système UC4
AgentWorkObject
"Nom du système UC4"."Nom du processus serveur"
Code
d'interruption
11603
Description
Fermeture d'un Agent
AgentWorkSysID
Nom du système UC4
AgentWorkObject
"Nom du système UC4"."Nom du processus serveur"."Nom de l'Agent"."Type
d'Agent"
AgentWorkString1
Nom de l'Agent
AgentWorkInteger1 Mode d'exécution du processus serveur :
1 = primaire
3 = normal
4 = processus de communication
Code
d'interruption
11604
Description
Démarrage à froid d'un Agent
AgentWorkSysID
Nom du système UC4
AgentWorkObject
"Nom du système UC4"."Nom du processus serveur"."Nom de l'Agent"."Type
d'Agent"
AgentWorkString1
Nom de l'Agent
AgentWorkInteger1 Mode d'exécution du processus serveur :
1 = primaire
3 = normal
4 = processus de communication
173
174
Chapter 6 Prise en charge SNMP
Code
d'interruption
11622
Description
Démarrage à chaud d'un Agent
AgentWorkSysID
Nom du système UC4
AgentWorkObject
"Nom du système UC4"."Nom du processus serveur"."Nom de l'Agent"."Type
d'Agent"
AgentWorkString1
Nom de l'Agent
Code
d'interruption
11650
Description
Coupure de la connexion à un Agent
AgentWorkSysID
Nom du système UC4
AgentWorkObject
"Nom du système UC4"."Nom du processus serveur"."Nom de l'Agent"."Type
d'Agent"
AgentWorkString1
Nom de l'Agent
AgentWorkInteger1 Mode d'exécution du processus serveur :
1 = primaire
3 = normal
4 = processus de communication
Code
d'interruption
11652
Description
L'Agent SAP n'est plus connecté au système SAP.
AgentWorkSysID
Nom du système UC4
AgentWorkObject
"Nom du système UC4"."Nom du processus serveur"."Nom de l'Agent"."Type
d'Agent"
AgentWorkString1
Nom de l'Agent
AgentWorkInteger1 Mode d'exécution du processus serveur :
1 = primaire
3 = normal
4 = processus de communication
Code
d'interruption
11662
Description
La connexion de l'Agent SAP au système SAP a été rétablie.
AgentWorkSysID
Nom du système UC4
AgentWorkObject
"Nom du système UC4"."Nom du processus serveur"."Nom de l'Agent"."Type
d'Agent"
AgentWorkString1
Nom de l'Agent
Automation Engine
175
AgentWorkInteger1 Mode d'exécution du processus serveur :
1 = primaire
3 = normal
4 = processus de communication
Code
d'interruption
11801
Description
Erreur système du processus serveur
AgentWorkSysID
Nom du système UC4
AgentWorkObject
"Nom du système UC4"."Nom du processus serveur"."Nom de la fonction
kernel"
AgentWorkString1
Texte du message d'erreur
AgentWorkInteger1
Numéro du message d'erreur
Code d'interruption
11818
Description
Le processus de travail primaire a changé
Remarque
A partir de la version 3.01C d'UC4
AgentWorkSysID
Nom du système UC4
AgentWorkObject
"Nom du système UC4"."Nom du processus serveur"
AgentWorkInteger1
Ancien mode
AgentWorkInteger2
Nouveau mode
Code d'interruption
801450
Description
Message d'une Alerte
AgentWorkSysID
Nom du système UC4
AgentWorkObject
"Nom du système UC4"."Client"."RunID"
AgentWorkString1
Nom de l'objet Alerte
AgentWorkString2
Texte du message d'Alerte.
AgentWorkInteger1
Statut de la Tâche Alerte (comme dans le fichier de message UC.MSL):
1542 = informé
1553 = accepté
1556 = escaladé
1800 = ENDED_NOT_OK - interrompu
1850 = ENDED_CANCEL - terminé par une interruption
1852 = rejeté
1856 = ENDED_ESCALATED - arrêt forcé par escalade
1900 = ENDED_OK - terminé avec code retour "0"
1901 = confirmé
Outre les interruptions SNMP générées par le système, l'instruction de Script :SEND_SNMP_TRAP
permet de générer des interruptions définies par l'Utilisateur. Les codes d'interruption générés par UC4 et
176
Chapter 6 Prise en charge SNMP
par UC4.Connect for HP OpenView NNM (codes d'interruption : 10000 - 10010) ne doivent pas être
utilisés comme interruptions SNMP définies par l'Utilisateur !
Code d'interruption
xxxxxx
Description
Interruptions SNMP définies par l'Utilisateur
AgentWorkSysID
Nom du système UC4
AgentWorkObject
"Nom du système UC4"."Nom du processus serveur"
AgentWorkString1
Défini par l'Utilisateur
AgentWorkString2
Défini par l'Utilisateur
AgentWorkString3
Défini par l'Utilisateur
AgentWorkString4
Défini par l'Utilisateur
AgentWorkString5
Défini par l'Utilisateur
AgentWorkInteger1
Défini par l'Utilisateur
AgentWorkInteger2
Défini par l'Utilisateur
AgentWorkInteger3
Défini par l'Utilisateur
AgentWorkInteger4
Défini par l'Utilisateur
AgentWorkInteger5
Défini par l'Utilisateur
6.7 Licence Net-SNMP
Various copyrights apply to this package, listed in various separate parts below. Please make sure that
you read all the parts. Up until 2001, the project was based at UC Davis, and the first part covers all code
written during this time. From 2001 onwards, the project has been based at SourceForge, and Networks
Associates Technology, Inc hold the copyright on behalf of the wider Net-SNMP community, covering all
derivative work done since then. An additional copyright section has been added as Part 3 below also
under a BSD license for the work contributed by Cambridge Broadband Ltd. to the project since 2001. An
additional copyright section has been added as Part 4 below also under a BSD license for the work
contributed by Sun Microsystems, Inc. to the project since 2003.
Code has been contributed to this project by many people over the years it has been in development, and a
full list of contributors can be found in the README file under the THANKS section.
---- Part 1: CMU/UCD copyright notice: (BSD like) ----Copyright 1989, 1991, 1992 by Carnegie Mellon University
Derivative Work - 1996, 1998-2000
Copyright 1996, 1998-2000 The Regents of the University of California
All Rights Reserved
Permission to use, copy, modify and distribute this software and its documentation for any purpose and
without fee is hereby granted, provided that the above copyright notice appears in all copies and that both
that copyright notice and this permission notice appear in supporting documentation, and that the name of
CMU and The Regents of the University of California not be used in advertising or publicity pertaining to
distribution of the software without specific written permission.
CMU AND THE REGENTS OF THE UNIVERSITY OF CALIFORNIA DISCLAIM ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF
Automation Engine
177
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL CMU OR THE REGENTS OF THE
UNIVERSITY OF CALIFORNIA BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM THE LOSS OF USE, DATA OR
PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
SOFTWARE.
---- Part 2: Networks Associates Technology, Inc copyright notice (BSD) ----Copyright (c) 2001-2003, Networks Associates Technology, Inc
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that
the following conditions are met:
l
l
l
Redistributions of source code must retain the above copyright notice, this list of conditions and the
following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
the following disclaimer in the documentation and/or other materials provided with the distribution.
Neither the name of the Networks Associates Technology, Inc nor the names of its contributors
may be used to endorse or promote products derived from this software without specific prior
written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
---- Part 3: Cambridge Broadband Ltd. copyright notice (BSD) ----Portions of this code are copyright (c) 2001-2003, Cambridge Broadband Ltd.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that
the following conditions are met:
l
l
l
Redistributions of source code must retain the above copyright notice, this list of conditions and the
following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
the following disclaimer in the documentation and/or other materials provided with the distribution.
The name of Cambridge Broadband Ltd. may not be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
178
Chapter 6 Prise en charge SNMP
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
---- Part 4: Sun Microsystems, Inc. copyright notice (BSD) ----Copyright © 2003 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, California 95054, U.S.A.
All rights reserved.
Use is subject to license terms below.
This distribution may include materials developed by third parties.
Sun, Sun Microsystems, the Sun logo and Solaris are trademarks or registered trademarks of Sun
Microsystems, Inc. in the U.S. and other countries.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that
the following conditions are met:
l
l
l
Redistributions of source code must retain the above copyright notice, this list of conditions and the
following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
the following disclaimer in the documentation and/or other materials provided with the distribution.
Neither the name of the Sun Microsystems, Inc. nor the names of its contributors may be used to
endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
---- Part 5: Sparta, Inc copyright notice (BSD) ----Copyright (c) 2003-2006, Sparta, Inc
All rights reserved
Redistribution and use in source and binary forms, with or without modification, are permitted provided that
the following conditions are met:
l
l
l
Redistributions of source code must retain the above copyright notice, this list of conditions and the
following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
the following disclaimer in the documentation and/or other materials provided with the distribution.
Neither the name of Sparta, Inc nor the names of its contributors may be used to endorse or
promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE
Automation Engine
179
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
---- Part 6: Cisco/BUPTNIC copyright notice (BSD) ----Copyright (c) 2004, Cisco, Inc and Information Network Center of Beijing University of Posts and
Telecommunications.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that
the following conditions are met:
l
l
l
Redistributions of source code must retain the above copyright notice, this list of conditions and the
following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
the following disclaimer in the documentation and/or other materials provided with the distribution.
Neither the name of Cisco, Inc, Beijing University of Posts and Telecommunications, nor the
names of their contributors may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
---- Part 7: Fabasoft R&D Software GmbH & Co KG copyright notice (BSD) ----Copyright (c) Fabasoft R&D Software GmbH & Co KG, 2003
[email protected]
Author: Bernhard Penz
Redistribution and use in source and binary forms, with or without modification, are permitted provided that
the following conditions are met:
l
l
l
Redistributions of source code must retain the above copyright notice, this list of conditions and the
following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
the following disclaimer in the documentation and/or other materials provided with the distribution.
The name of Fabasoft R&D Software GmbH & Co KG or any of its subsidiaries, brand or product
names may not be used to endorse or promote products derived from this software without specific
prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
180
Chapter 6 Prise en charge SNMP
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Automation Engine
181
7 UC4 et les systèmes cible
7.1 UC4 et BS2000
7.1.1 archive de texte BS2000
Situation de départ
Le problème du transport des fichiers BS2000 par d'autres moyens qu'un support de données BS2000
s'est déjà souvent posé. C'est ainsi qu'entrent en ligne de compte des moyens d'informatique
personnelle comme les disquettes, les CD et en particulier le transfert électronique. C'est devenu entre
temps chose possible avec les fichiers texte (SAM, longueur maximale de l'enregistrement : 255), étant
donné qu'on peut partir du principe que dans toute installation BS2000, le transfert de fichiers texte entre
un PC et BS2000 (au pire avec le transfert de fichiers EDT) existe.
Les fichiers binaires (bibliothèques LMS, programmes, etc.) posent en l'occurrence un problème. FTP
permet certes le transfert de programmes en mode binaire ; ils sont cependant d'une taille supérieure (2
pages PAM) et continuent de fonctionner. Les bibliothèques LMS ne peuvent, tout comme les fichiers
ISAM et similaires, être transférés, étant donné que le FCB n'est pas rétabli. En outre, FTP est payant
dans BS2000 (TCP/IP-AP). Dans UC4, ce thème revêt une grande importance étant donné que les
fichiers BS2000 sont fournis sur CD.
La solution : archive de texte BS2000
Intégration dans BS2-TOOLS
La reprise des fichiers dans une archive de texte et la décompression d'une archive de texte sont mis en
œuvre dans BS2-TOOLS version 2.00W et supérieure.
l
Acceptation d'un fichier quelconque, et en particulier d'un fichier binaire, dans une archive de texte.
l
Code d'action "C+" devant le fichier binaire.
Sélection de l'archive de texte cible à l'aide de la touche K3.
"Overwrite=E" pour l'extension de l'archive de texte (plusieurs fichiers dans une archive de texte).
Le procédé peut prendre un peu de temps dans le cas de fichiers volumineux !
Décompression d'une archive de texte :
Le code d'action "TAR" avant une archive de texte crée les fichiers dans l'ID utilisateur personnel.
Programme BS2-TAR
Ce programme décompresse une archive de texte dans l'ID utilisateur personnel. Le programme est requis
pour toutes les livraisons sous forme d'archive de texte.
Le programme BS2-TAR est libre de licence (logiciel gratuit), il est donc désormais fourni dans la
MUSTERLIB avec tous les systèmes existants. Par conséquent, il peut être obtenu auprès de tous les
distributeurs.
182
Chapter 7 UC4 et les systèmes cible
Les fichiers .tar fournis dont le nom contient "NK4" correspondent aux pubsets NK4 et peuvent également
être décompressés à l'aide du programme BS-TAR.
Décompression d'une archive de texte :
/FILE fichier_sortie, LINK=TAR
/EXEC BS2-TAR
CD UC4 fourni
Le dossier CD:TOOLS\BS2_TAR contient le programme BS2-TAR sous deux formes :
1) BS2-TAR.BIN
Le fichier BS2-TAR.BIN contient le programme BS2-TAR. Celui-ci a été transféré via FTP, en mode
binaire, sur le CD et peut à nouveau être transféré dans BS2000 via FTP.
FTP
OPENOrdinateur BS2000
userid (TSOS)
mot de passe
account
BIN
PUT BS2-TAR.BIN
BYE
Dans BS2000 :
/CAT BS2-TAR.BIN,BS2-TAR,STATE=U,SHARE=YES,ACCESS=READ
2) BS2-TAR.TAR
La dernière version du programme BS2-TAR au format .tar.
BS2-TAR doit déjà être installé sur votre machine BS2000.
Le fichier est transféré, avec un Transfert de Fichier quelconque en mode texte, dans BS2000 puis y est
décompressé avec BS2-TAR.
/FILE BS2-TAR.TAR,LINK=TAR
/EXEC BS2-TAR
7.1.2 Moteur/Agent d'automatisation UC4 - BCIN pour
établissement de la connexion
Pour une connexion TCP/IP d'un Agent BS2000 avec d'autres composants, leur adresse IP doit être
connue dans BS2000.
l
La communication entre un UC4 Automation Engine et un Agent BS2000 s'effectue via une
connexion TCP/IP.
Dans ce cadre, des informations et des protocoles internes sont échangés.
L'adresse IP du Serveur doit être annoncée au BS2000 à l'aide de /BCIN !
l
Si un Transfert de Fichier est initié par/vers un Agent BS2000, les Agents concernés établissent
entre eux une connexion TCP/IP.
BS2000 doit connaître le partenaire de Transfert de Fichier de l'Agent BS2000.
Définissez l'adresse IP de l'hôte (machine du partenaire de Transfert de Fichier) à l'aide de /BCIN.
Automation Engine
183
7.1.3 Agent BS2000 - Prise en charge du Transfert de
Fichier
L'Agent BS2000 prend en charge toutes les fonctions de Transfert de Fichier comme le Transfert de
Fichiers texte et binaires ou le Transfert de Fichier avec des caractères génériques.
Attributs de fichier pour la destination
Lors de la définition d'un objet Transfert de Fichier, il est possible de spécifier dans l'onglet "Transfert de
Fichier" des attributs de fichier pour la destination du transfert de fichiers. Tous les attributs de fichier
correspondant aux commandes de fichier sont possibles. Ils sont entrés dans une zone de texte distincte
et la séparation de plusieurs attributs de fichier se fait au moyen de virgules. Les attributs suivants sont
créés par défaut :
Mode texte :
FCB=SAM,LINK=UCEXSAM,SPACE=(300,300)
Mode binaire :
SPACE=(300,300),BLKSIZE=STD,BLKCTRL=NO,FCB=PAM
Les attributs explicitement indiqués remplacent les valeurs par défaut ou sont ajoutés à la commande.
Si vous indiquez un attribut vous-même, la commande de fichier par défaut est remplacée dans l'Agent.
Si vous indiquez SPACE=, le résultat serait par exemple un fichier SAM avec RECFORM=FIX. Dans ce
cas, vous devriez également utiliser l'attribut RECFORM s'il vous faut par exemple RECFORM=V.
Avec FT-BS2000 de Siemens, vous pouvez également créer des fichiers ISAM. En voici un exemple
dans ce qui suit :
FCB=ISAM,BLKCTRL=DATA,RECFORM=V,KEYPOS=5,KEYLEN=8
Exemple
RECSIZE=50,VOLUME=PRIVATE,SPACE=(100,100)
Conserver les attributs originaux
Pour reprendre les attributs des fichiers source pour les fichiers cible, utilisez l'option "Conserver les
attributs originaux" dans l'onglet Transfert de Fichier. Le système ne tient compte de ce paramètre
uniquement lorsque les Agents source et cible présentent la version 9.00A d'UC4 ou supérieure (nouveau
protocole de Transfert de Fichier). De plus, la source doit correspondre à la plateforme cible.
Pour le Transfert de fichier BS2000, les attributs de fichier suivants peuvent être conservés:
Attributs du Catalogue de
Macro
Attributs du Fichier de Macro
184
Chapter 7 UC4 et les systèmes cible
l
l
l
l
l
l
l
l
l
l
l
l
l
l
ACCESS
ACLPROT
BACKUP
BASACL
CCS
DESTROY
EXDATE
GROUPAR
GUARDS
LARGE
OTHERAR
OWNERAR
RETPD
SHARE
l
l
l
l
l
l
l
l
l
l
BLKCTRL
BLKSIZE
DUPEKY
FCBTYPE
KEYLEN
KEYPOS
RECFORM
RECSIZE
RETPD
SPACE
Lorsque vous utilisez ces paramètres, aucun autre attribut supplémentaire ne doit être indiqué dans le
Transfert de fichier pour le fichier cible. Sinon, une erreur se produit.
Eléments de bibliothèque en tant que source et cible
Les éléments des bibliothèques LMS (PLAM) peuvent être la source et la cible d'un Transfert de Fichier.
l
l
l
Les éléments de bibliothèque peuvent être transférés entre deux bibliothèques LMS.
Un élément de bibliothèque peut être transféré en tant que fichier dans un système cible
quelconque.
Des fichiers texte de systèmes cible quelconques peuvent être transférés dans une bibliothèque
LMS.
Il faut spécifier l'élément sous la forme suivante :
*LIB(bibliothèque,élément(version),type)
La version de l'élément est facultative. Si la version n'a pas été spécifiée, la version la plus élevée est lue
(source) ou un élément de version "@" est écrit (cible).
Exemples
*LIB($RS.LMS.LIB,MEIN.ELEMENT,S)
*LIB($RS.LMS.LIB,MEIN.*,S)
Limitations lors du Transfert de Fichiers PAM
Attention aux limitations suivantes :
l
l
L'Agent BS2000 est l'expéditeur de fichiers : si le fichier PAM existe au format NK et ne présente
aucune marque de fin, la dernière page est ignorée.
L'Agent BS2000 est le destinataire de fichiers : lors de l'écriture d'un fichier PAM, une marque de fin
(un bloc logique supplémentaire) est rajoutée. Ce bloc peut perturber certaines structures de fichier,
ce qui peut dans certains cas rendre le fichier inutilisable.
Automation Engine
185
7.1.4 Utilitaire pour la Tâche RFC
Parmi les fichiers fournis avec l'Agent BS2000 se trouve également l'utilitaire pour la Tâche RFC
UCYBRFC?.
Le fichier INI de l'Agent contient la section "[RFC]" avec le paramètre "LOGON". Si le paramètre est défini
sur "1", dans le cas d'un Transfert de Fichier avec ID utilisateur entré, l'Agent crée un Job batch sous l'ID
utilisateur entré. Dans ce Job batch, l'utilitaire UCYBRFC? est exécuté. Il se connecte par TCP/IP via le
port qui a été défini avec le paramètre du même nom (également dans la section [RFC]). Grâce à cette
connexion, l'Agent peut alors vérifier les droits d'accès au fichier par rapport à l'Utilisateur entré. Etant
donné que cette méthode entraîne une perte de performance de l'Agent, les Tâches RFC sont maintenues
pour d'autres Transferts de Fichiers. Ce n'est que lorsqu'une Tâche RFC ne reçoit plus de demandes
pendant un certain temps (définissable avec le paramètre TIMEOUT=), qu'elle se termine d'elle-même.
Le fichier UCYBRFC? doit être partageable lorsque le mécanisme RFC est activé.
7.1.5 Agent - Numéros de port définis librement
Les numéros de port libres sont généralement attribués dans le DCSOF avec le paramètre "Freeport".
Par défaut, le premier numéro de port libre est le 4096.
L'Agent BS2000 ne fonctionne pas avec un numéro de port fixe, qui serait par exemple enregistré dans son
fichier INI. Lors de l'établissement de la connexion de l'Agent au UC4 Automation Engine, l'Agent
demande un numéro de port libre. Le système d'exploitation lui assigne le premier numéro de port libre.
Si l'Agent BS2000 est chargé automatiquement après des tests réussis lors du démarrage de l'hôte,
veillez à ce que sa demande de numéro de port libre n'entre pas en conflit avec d'autres applications.
Exemple :
Lors de tests, on obtient la configuration suivante :
1. Une application qui utilise le numéro de port 4096 via la commande /BCMAP est déjà en cours
d'exécution.
2. L'Agent BS2000 est démarré manuellement et utilise le numéro de port libre suivant, par exemple 4097.
3. Résultat : l'application et l'Agent fonctionnent correctement.
Après les tests, l'Agent BS2000 est démarré automatiquement ; il est donc chargé avant cette application.
1. L'Agent BS2000 utilise le premier numéro de port libre 4096.
2. L'application à laquelle ce numéro de port a été assigné via la commande /BCMAP ne peut être
démarrée.
7.1.6 Commande de console BS2000
La création, la configuration et le traitement d'une séquence de données sont un processus complexe au
cours duquel les fonctions et les instructions de script ainsi que des objets spéciaux interagissent.
L'exemple suivant montre les définitions nécessaires dans les objets impliqués et à quoi les scripts font
référence.
L'exemple est intentionnellement succinct et facile pour clarifier le principe en dépit de sa complexité. Il
doit montrer comment poser une commande de console BS2000 avec un Job et comment le résultat est
affiché ligne par ligne dans son protocole d'activation.
186
Chapter 7 UC4 et les systèmes cible
Pour poser une commande de console BS2000, l'utilitaire d'UC4 UCYEBXXZ doit être installé sur
l'hôte.
Job: SC.PROCESS.BS2000UCON
Dans le script de ce Job, la fonction PREP_PROCESS est appelée afin de préparer le traitement de la
séquence de données. Les paramètres suivants sont ainsi transmis :
l
l
l
l
l
Nom de la machine sur laquelle un Job d'Evènement doit être exécuté, ici "C70".
Type du Job Evènement devant être exécuté, ici : "BS2000UCON".
La saisie "BS2000UCON" entraîne l'exécution du Job "EVENT.BS2000UCON".
Par défaut, les Jobs Evènements "EVENT.BS2000CMD", "EVENT.BS2000UCON",
"EVENT.UNIXCMD", "EVENT.UNIXFS" et "EVENT.WINCMD" sont fournis dans le Client
"0000". Ils peuvent être utilisés directement ou en tant que modèles pour des Jobs Evènement
personnels.
Le troisième paramètre de la fonction a été omis. Cela signifie qu'avec la valeur par défaut "*"
comme Filtre, toutes les lignes générées par la commande de console sont prises en compte.
La Variable de script "&CMD" du Job d'Evènement est renseignée avec la valeur "BCDISP
DISP=O".
Le Job d'Evènement doit poser cette commande dans la console et ainsi énumérer toutes les
applications ouvertes.
Le Job "EVENT.BS2000UCON" est ensuite démarré.
Job: EVENT.BS2000UCON
Automation Engine
187
Ce Job est le Job "EVENT.BS2000UCON" fourni par défaut dans le Client "0000".
Il est important que la case à cocher "Dialogue des attributs" soit sélectionnée dans l'onglet Attributs de
ce Job. Cela permet de lire l'objet Include "ATTRDIA.BS2000" qui provoque normalement le dialogue des
attributs.
Include: ATTRDIA.BS2000
188
Chapter 7 UC4 et les systèmes cible
Cela permet de renseigner tous les attributs figurant dans le script de l'Include. Le dialogue des attributs
n'est pas affiché, car la transmission des contenus de la Variable se fait en interne.
Job: EVENT.BS2000UCON
Il est désormais possible de procéder à une connexion du Job et d'exécuter la commande de console.
l
l
l
l
L'utilitaire UC4 "UCYEBXXZ" est démarré sous l'ID "$UC4".
L'utilitaire tente d'établir une des connexions de console indiquées.
La commande "BCDISP DISP=O" est exécutée une fois une connexion établie avec succès.
Le message de fin de la commande de console ou la durée "Temps dépassé" définie sur 120
secondes terminent la connexion.
Pour chaque Transfert de Fichier, le fichier en sortie est transféré au UC4 Automation Engine et il est à
disposition en tant que séquence de données. Le Job "EVENT.BS2000UCON" est terminé.
Job: SC.PROCESS.BS2000UCON
Automation Engine
189
La fonction PREP_PROCESS renvoie une valeur qui est une référence aux données de gestion de la
séquence de données à traiter.
Cette valeur est passée à l'instruction :PROCESS comme paramètre de démarrage. :PROCESS et
:ENDPROCESS forment une boucle de processus qui va s'exécuter ici jusqu'à ce que la fin de la
séquence de données soit atteinte. A chaque cycle de la boucle, une nouvelle ligne de cette séquence de
données est lue dans la mémoire de travail. La fonction GET_PROCESS_LINE peut calculer, avec la
valeur actuelle, le contenu des lignes de la séquence de données.
Dans l'exemple, la ligne de console respective est affichée dans le protocole d'activation.
L'instruction :STOP interrompt l'exécution du Job et affiche ce protocole d'activation.
7.1.7 Commande de système d'exploitation BS2000
La création, la configuration et le traitement d'une séquence de données sont un processus complexe au
cours duquel les fonctions et les instructions de script ainsi que des objets spéciaux interagissent.
L'exemple suivant montre les définitions nécessaires dans les objets impliqués et à quoi les scripts font
référence.
L'exemple est intentionnellement succinct et facile pour clarifier le principe en dépit de sa complexité. Il
doit montrer comment poser une commande BS2000 avec un Job sous l'ID "UC4" et comment le résultat
est affiché ligne par ligne dans son protocole d'activation.
Job: SC.PROCESS.BS2000CMD
190
Chapter 7 UC4 et les systèmes cible
Dans le script de ce Job, la fonction PREP_PROCESS est appelée afin de préparer le traitement de la
séquence de données. Les paramètres suivants sont ainsi transmis :
l
l
l
l
l
Nom de la machine sur laquelle un Job d'Evènement doit être exécuté, ici "C70".
Type du Job Evènement devant être exécuté, ici : "BS2000CMD".
La saisie "BS2000CMD" entraîne l'exécution du Job "EVENT.BS2000CMD".
Par défaut, les Jobs Evènements "EVENT.BS2000CMD", "EVENT.BS2000UCON",
"EVENT.UNIXCMD", "EVENT.UNIXFS" et "EVENT.WINCMD" sont fournis dans le Client
"0000". Ils peuvent être utilisés directement ou en tant que modèles pour des Jobs Evènement
personnels.
Le troisième paramètre de la fonction a été omis. Cela signifie qu'avec la valeur par défaut "*"
comme Filtre, toutes les lignes générées sont prises en compte.
La Variable de script "&CMD" du Job d'Evènement est renseignée avec la valeur "/STA P".
Le Job d'Evènement doit poser cette commande avec l'objet Login "UC4ADMIN".
Le Job "EVENT.BS2000CMD" est ensuite démarré.
Job: EVENT.BS2000CMD
Automation Engine
191
Ce Job est le Job "EVENT.BS2000CMD" fourni par défaut dans le Client "0000".
Il est important que la case à cocher "Dialogue des attributs" soit sélectionnée dans l'onglet Attributs de
ce Job. Cela permet de lire l'objet Include "ATTRDIA.BS2000" qui provoque normalement le dialogue des
attributs.
Include: ATTRDIA.BS2000
192
Chapter 7 UC4 et les systèmes cible
Cela permet de renseigner tous les attributs figurant dans le script de l'Include. Le dialogue des attributs
n'est pas affiché, car la transmission des contenus de la Variable se fait en interne.
Job: EVENT.BS2000CMD
Il est désormais possible de procéder à une connexion du Job et d'exécuter la commande.
l
l
La commande "/STA P" à exécuter est lue dans la Variable de script "&CMD".
Le SYSOUT est redirigé dans un fichier en sortie et la commande est exécutée.
Pour chaque Transfert de Fichier, le fichier en sortie est transféré au UC4 Automation Engine et il est à
disposition en tant que séquence de données. Le Job "EVENT.BS2000CMD" est terminé.
Job: SC.PROCESS.BS2000CMD
Automation Engine
193
La fonction PREP_PROCESS renvoie une valeur qui est une référence aux données de gestion de la
séquence de données à traiter.
Cette valeur est passée à l'instruction :PROCESS comme paramètre de démarrage. :PROCESS et
:ENDPROCESS forment une boucle de processus qui va s'exécuter ici jusqu'à ce que la fin de la
séquence de données soit atteinte. A chaque cycle de la boucle, une nouvelle ligne de cette séquence de
données est lue dans la mémoire de travail. La fonction GET_PROCESS_LINE peut calculer, avec la
valeur actuelle, le contenu des lignes de la séquence de données.
Dans l'exemple, la ligne respective est affichée dans le protocole d'activation.
L'instruction :STOP interrompt l'exécution du Job et affiche ce protocole d'activation.
7.2 UC4 et les bases de données
7.2.1 Agent de base de données
Un Agent pouvant établir une connexion aux bases de données fait partie des composants UC4. Il vous
permet d'exécuter des instructions SQL dans ces bases de données sans exécuter d'outil externe de
ligne de commande. Cela améliore la sécurité et simplifie l'administration de la base de données. Outre
les instructions SQL typiques, comme SELECT ou UPDATE, l'Agent peut également exécuter des
commandes spécifiques à votre base de données et des procédures enregistrées dans la base de
données.
L'objet Job contient un éditeur convivial vous permettant de formuler les instructions. Il vous montre, en
outre, les tables de la base de données et ses colonnes.
Le résultat des instructions SQL est enregistré dans le rapport de Job et peut être lu précisément avec le
script PREP_PROCESS_REPORT. Si une erreur se produit pendant l'exécution du Job, ou si ce dernier
est interrompu, l'Agent annule alors par défaut toutes les instructions SQL jusqu'au dernier COMMIT.
L'objet Job vous offre de nombreuses possibilités de paramétrage vous permettant de configurer
l'exécution des instructions SQL.
UC4.Agent for Databases prend actuellement en charge Oracle, MSSQL, DB2 et MySQL, entre autres.
Rubriques connexes :
194
Chapter 7 UC4 et les systèmes cible
Onglet Forme
7.2.2 Connexion aux bases de données Oracle
L'Agent de base de données peut se connecter soit à une instance de base de données unique, soit à
des nœuds RAC.
Connexion à une instance Oracle unique
Cette connexion est celle par défaut. L'Agent de base de données ne peut se connecter qu'à une seule
instance de base de données. L'objet Job contient les données de connexion nécessaires.
Le paramètre useOraClient= du Fichier INI de l'Agent de base de données (section [SQL]) doit être mis sur
0.
Connexions RAC
L'Agent de base de données peut se connecter à des nœuds RAC Oracle. Le fichier Oracle
"tnsnames.ora" contient les données de connexion correspondantes. Le champ "Serveur" de l'onglet
"SQL" de l'objet Job n'a pas besoin d'être rempli.
Effectuez les étapes suivantes après l'installation de l'Agent de base de données :
1. Définissez sur 1 le paramètre useOraClient= du fichier INI de l'Agent de base de données.
2. Installez sur l'hôte de l'Agent de base de données le Client ou Oracle Instant Client. Ce dernier est
fourni sous différentes formes. L'Agent de base de données requiert le package "Basic".
3. Vous devez définir deux Variables d'environnement si vous utilisez Oracle Instant Client. Entrez
pour la Variable d'environnement PATH (Windows) ou LD_LIBRARY_PATH (UNIX) le répertoire
d'installation d'Oracle Instant Client. La Variable d'environnement TNS_ADMIN doit inclure le
répertoire dans lequel se trouve le fichier tnsnames.ora.
Exemple de fichier tnsnames.ora :
APPL_DB = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = db-server01)
(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = db-server02)(PORT =
1521)) (LOAD_BALANCE = yes) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_
NAME = APPLDB.CUSTOMER.COM) ) )
Entrez "APPL_DB" dans le champ "Base de données" de l'objet Job.
7.2.3 Sybase - Procédures enregistrées
L'exécution de procédures enregistrées requiert une commande supplémentaire.
Utilisez pour cela les lignes de commande suivantes :
execute sp_procxmode 'procedure name','anymode';
execute procedure name;
Le message d'erreur suivant est affiché si vous essayez d'exécuter une telle procédure directement.
"Stored procedure 'procedure name' may be run only in unchained transaction mode. The 'SET CHAINED
OFF' command will cause the current session to use unchained transaction mode."
Automation Engine
195
La commande "SET CHAINED OFF" ne peut être exécutée à cause du pilote JDBC. Utilisez la
commande sp_procxmode.
7.2.4 Procédures enregistrées par MS SQL Server
Avec l'Agent de base de données UC4, il est possible d'exécuter des procédures enregistrées pour MS
SQL.
RETURN
L'instruction RETURN peut renvoyer un chiffre. Ce code retour peut être repris, comme indiqué dans
l'exemple de script suivant, dans le rapport de Job. Le nom de la procédure enregistrée est ANGTEST.
SQL_SET_STATEMENT_TERMINATOR TERM='!';
DECLARE @result int;
EXEC @result = ANGTEST;
select @result;!
Etant donné que le point virgule se trouve au sein de l'instruction, un autre séparateur est
automatiquement sélectionné.
Le Job se termine normalement indépendamment du code retour. Si vous souhaitez modifier le statut
de fin du Job, vous pouvez lire le code retour dans le rapport de Job et y réagir avec :MODIFY_STATE.
PRINT
L'instruction PRINT permet d'afficher des messages pour les utilisateurs. DBCC CHECKDB en est un
exemple. Ces messages sont repris dans le rapport de Job. L'exécution du Job se poursuit normalement.
RAISE ERROR
Entraîne une interruption du Job. Le message d'erreur est repris dans le rapport d'activation.
Rubriques connexes :
Onglet "Forme"
Onglet Script
PREP_PROCESS_REPORT
7.3 UC4 et GCOS 8
7.3.1 Agent GCOS8 - Prise en charge du Transfert de
Fichier
L'agent GCOS prend en charge le Transfert de fichiers pour les fichiers avec un format déterminé et des
attributs spécifiques.
196
Chapter 7 UC4 et les systèmes cible
Format de fichier GFRC
[GFRC] [UFF séquentiel] [UFF relatif] [UFF indexé]
l
l
l
Organisation séquentielle des fichiers
Mode d'accès séquentiel
Modes de traitement : entrée, sortie ou extension
Syntaxe
Mode d'entrée :
GFRC=code média[,RSZ=longueur de l'enregistrement]
Mode de sortie :
GFRC=code média[,RSZ=longueur de l'enregistrement][,VLREC_NO/VLREC_SEG]
Attribut de
fichier
(attributs
UFAS)
Description
GFRC=code
média
Force l'organisation des fichiers au format GFRC séquentiel.
Valeurs autorisées pour le code média :
l
l
l
l
l
"00" : aucun Media conversion Record ou aucun Printer slew controls ;
"01" : Binary card image ;
"02" : BCD card image ;
"06" : GFRC Format ASCII (format utilisé par le Time Sharing System) ;
"10" : Time Sharing System information Record.
RSZ=longueur Nombre maximal de caractères pour les enregistrements lus ou écrits.
de
Si la plate-forme de destination est GCOS8, la valeur par défaut est 80 pour les
l'enregistrement
enregistrements non-partitionnés et 84 pour les enregistrements partitionnés. Dans
tous les autres cas, les valeurs standard suivantes s'appliquent :
l
l
l
l
Code média 0 : 16384
Code média 2 : 1272
Code média 6 : 16384
Code média 10 : 1272
VLREC_NO
Force l'utilisation d'enregistrements de longueur fixe.
VLREC_SEG
Longueur d'enregistrement variable, partitionnée en un ou plusieurs blocs physiques.
Exemple
GFRC=06,RSZ=70
Format de fichier séquentiel UFF
[GFRC] [UFF séquentiel] [UFF relatif] [UFF indexé]
Automation Engine
l
l
l
l
197
Organisation séquentielle des fichiers
Mode d'accès séquentiel
Modes de traitement : entrée, sortie ou extension
par défaut, longueur d'enregistrement variable.
Syntaxe
Mode d'entrée :
UFF_SEQ[,RSZ=longueur de l'enregistrement]
Mode de sortie :
UFF_SEQ[,RSZ=longueur de l'enregistrement][,VLREC_NO/VLREC_SEG][,CISZ=taille]
Attribut de
fichier
(attributs
UFAS)
Description
UFF_SEQ
Force l'organisation des fichiers au format UFF séquentiel.
RSZ=longueur Nombre maximal de caractères pour les enregistrements lus ou écrits. La valeur
de
influence la taille de l'intervalle de contrôle (CI) sélectionnée pour les Fichiers de
l'enregistrement sortie. Si la taille maximale de l'enregistrement est de 2000 ou moins, une taille CI de
1K est utilisée. Les tailles d'enregistrement supérieures à 2000 provoquent la création
de CI d'une longueur de mot de 4K. La valeur par défaut est 80.
VLREC_NO
Force l'utilisation d'enregistrements de longueur fixe.
VLREC_SEG
Longueur d'enregistrement variable, partitionnée en un ou plusieurs blocs physiques.
CISZ=taille
Définit la taille de l'intervalle de contrôle (en octets).
Exemple
UFF_SEQ,RSZ=100
Format de fichier relatif UFF
[GFRC] [UFF séquentiel] [UFF relatif] [UFF indexé]
l
l
l
l
Organisation relative des fichiers
Mode d'accès séquentiel ou libre
Modes de traitement : entrée, sortie ou extension
longueur de l'enregistrement fixe.
Syntaxe
Mode d'entrée :
UFF_REL[,RSZ=longueur de l'enregistrement]
Mode de sortie :
UFF_REL[,RSZ=longueur de l'enregistrement][,CISZ=taille]
198
Chapter 7 UC4 et les systèmes cible
Attribut de fichier
(attributs UFAS)
Description
UFF_REL
Force l'organisation des fichiers au format UFF relatif.
RSZ=longueur de
l'enregistrement
Nombre maximal de caractères pour les enregistrements lus ou écrits. La
valeur par défaut est 80.
CISZ=taille
Définit la taille de l'intervalle de contrôle (en octets).
Exemple
UFF_REL,RSZ=120,CISZ=8192
Format de fichier indexé UFF
[GFRC] [UFF séquentiel] [UFF relatif] [UFF indexé]
l
l
l
l
Organisation indexée des fichiers
Mode d'accès séquentiel ou libre
Modes de traitement : entrée, sortie ou extension
longueur de l'enregistrement fixe.
Le nom du fichier et celui du fichier d'index doivent être spécifiés en les séparant par un point-virgule.
Syntaxe
Mode d'entrée :
UFF_IND[,KEY=(doublons,décalage,longueur)][,KNR=numéro de clé][,RSZ=longueur de
l'enregistrement]
Mode de sortie :
UFF_IND,KEY=(doublons,décalage,longueur)[,RSZ=longueur de l'enregistrement][,CISZ=taille]
Attribut de
fichier
(attributs
UFAS)
Description
UFF_IND
Force l'organisation des fichiers au format UFF indexé.
RSZ=longueur Nombre maximal de caractères pour les enregistrements lus ou écrits. La valeur par
de
défaut est 80.
l'enregistrement
Automation Engine
KEY=
(
doublons
,
décalage
,longueur)
199
Définit une clé pour les fichiers indexés :
l
l
l
Doublons - indique si des clés doubles pour la définition des clés sont
permises.
Valeurs autorisées :
"0" - La clé ne contient pas de doublons.
"1" - La clé peut contenir des doublons.
Décalage - décalage de la clé en enregistrements (octets).
Longueur - longueur de la clé (octets).
Il est permis de définir plus d'une clé. La première entrée est la clé primaire.
Définissez le paramètre Dupliquer sur 0 pour ne permettre aucune duplication de clé.
La deuxième entrée jusqu'à la nième entrée représentent les n-1 clés changeantes.
Cet attribut est obligatoire.
KNR=numéro
de clé
Définit la clé qui est utilisée comme clé de référence lors de la recherche de
l'enregistrement à lire. Cette entrée correspond à l'élément de tableau (base 1) de la
définition des clés dans la structure KEY_DESC, qui est utilisée pour ouvrir le fichier.
La valeur par défaut est 1, c'est-à-dire la clé primaire.
CISZ=taille
Définit la taille de l'intervalle de contrôle (en octets).
Exemple
UFF_IND,KEY=(0,0,20)
Rubriques connexes :
Onglet Transfert de Fichier
7.3.2 Surveillance d'une fin anormale de l'Agent Job
Dans la description suivante, il faut trouver les inscriptions sur l'Agent GCOS8 et reconnaître la fin
anormale d'un Agent Job.
L'Agent GCOS8 travaille avec trois informateurs de Job qui lui communiquent le statut des Jobs :
1. Informateur de démarrage (pour le démarrage du Job)
2. Informateur de fin (pour la fin du Job)
3. Informateur de rapport (pour le rapport de Job)
L'informateur de rapport est généré par le système RSM, si un tel système est utilisé. Les Jobs de GCOS8
ne sont terminés que lorsque la création du rapport de Job est terminée. Le système RSM cherche ce
dernier dans le SYSOUT. Une Alerte est ensuite envoyée à l'Agent pour que le rapport de Job puisse être
transféré dans le système UC4.
Comme vous le voyez, les programmes informateurs sont de la plus haute importance pour l'exécution du
Job. UC4 vous donne la possibilité de réagir à une fermeture anormale de l'Agent Job.
Le Program Switch Word (PSW) est utilisé pour la notification d'une fin anormale de l'Agent Job. Il s'agit
d'une zone mémoire de 36 bits de long. Les bits de 0 à 17 sont réservés au système GCOS. Les autres
bits entre 18 et 35 peuvent être utilisés à votre gré. L'Agent Job utilise exactement un bit pour afficher son
statut. Le paramètre SW=numéro de bit vous permet de déterminer le bit en question. Auparavant, vous
200
Chapter 7 UC4 et les systèmes cible
devez définir le bit sélectionné avec l'instruction JCL $SET. Avec cette configuration, l'Agent Job vérifie si
le bit se trouve dans le statut ON et le met sur OFF, dès qu'il se termine normalement. S'il reste dans le
statut ON, c'est que l'Agent Job s'est terminé anormalement.
Assurez-vous que le bit sélectionné n'est pas déjà utilisé pour d'autres applications !
Déroulement
Dans les descriptions qui suivent, nous avons utilisé le bit 18. Vous pouvez, cependant, choisir à cette fin
n'importe quel bit situé entre 18 et 35 et qui n'est pas encore occupé. Pour activer la surveillance des
informateurs de Job, procédez comme suit.
Pour l'informateur de démarrage :
1. Ouvrez l'objet Include d'en-tête nommé HEADER.GCOS8.
2. Insérez l'instruction $SET ainsi que le paramètre d'Agent Job SW=. Dans l'illustration, les
emplacements décrits sont entourés en rouge pour les mettre en évidence.
3. L'emplacement où le statut du bit est vérifié est également entouré. S'il est défini comme
auparavant, l'informateur de démarrage a été terminé anormalement. Le Job est interrompu comme
réaction à cela. Vous pouvez, bien entendu, insérer d'autres instructions.
Automation Engine
201
Pour l'informateur de fin :
1. Ouvrez l'objet Include de queue nommé TRAILER.GCOS8.
2. La configuration est exactement la même que pour l'informateur de démarrage. Insérez l'instruction
$SET ainsi que le paramètre d'Agent Job SW=. Dans l'illustration, les emplacements décrits sont
entourés en rouge pour les mettre en évidence.
Pour l'informateur de rapport :
Reportez-vous à la documentation RSM pour savoir comment adapter l'informateur de rapport.
7.4 UC4 et Java EE/JMX
7.4.1 Agent JMX/Java EE
Java Management Extensions (JMS) est une technologie qui configure des instruments pour contrôler
et surveiller des applications, appareils et réseaux. La plate-forme UC4 Automation offre la possibilité
d'intégrer des applications Java dans des processus métiers à l'aide d'un Agent pour JMX. La
connexion est établie via un serveur MBean grâce auquel vous pouvez accéder aux MBeans à l'aide de
fonctions.
202
Chapter 7 UC4 et les systèmes cible
En principe, on distingue deux méthodes d'établissement de la connexion. L'Agent JMX/Java EE peut
s'exécuter d'un côté comme application web au sein de la Java Virtual Machine et accéder au serveur
MBean de la même machine.
D'un autre côté, il est possible de configurer un Job de manière à ce qu'il puisse atteindre les serveurs
MBean se trouvant sur d'autres machines à l'aide du JMX Remote API (JSR 160). Dans l'objet Job, il est
possible de spécifier l'URL du serveur MBean. Les machines des serveurs MBean doivent dans ce cas-là
disposer d'un serveur de connexion.
Dans l'onglet Hôte des Jobs JMX, il est possible de paramétrer la connexion au serveur MBean.
Si l'Agent JMX pour SAP est utilisé, il crée en plus un fichier log au format SAP. Il l'enregistre
automatiquement dans le répertoire d'installation de l'Agent, dans le sous-dossier "log". Vous pouvez tout
simplement poursuivre le traitement de ce fichier avec les outils SAP.
Rubriques connexes :
UC4-JCL pour JMX
Automation Engine
203
7.4.2 Création de MBeans à partir des services web
Mode d'emploi pour la création de MBeans sur la base de services web.
Ce mode d'emploi présuppose des connaissances de Java et des services web.
Attention : UC4 n'offre aucune prise en charge des services web, ni des MBeans !
Généralités
La plate-forme UC4 Automation prend en charge les services Web via l'utilisation de MBeans avec l'Agent
JMX. De nombreux éditeurs offrent la plupart du temps, au lieu de MBeans, les services web qui
permettent d'accéder à leurs applications. Ce mode d'emploi vous montre, étape par étape, comment
créer un MBean à partir d'un service web existant. Nous utilisons comme exemple le service web
"CurrencyConvertor", qui met à disposition Generic Objects Technologies Ltd. Il offre les derniers cours de
conversion du change.
Il vous faut :
l
l
l
un Agent JMX
un accès au service web (WDSL, URL, paramètres)
Apache Axis (disponible gratuitement)
Attention : il n'est possible de créer des MBeans que pour les services web synchrones ! Les services
web asynchrones sont d'une utilisation bien plus complexe et nécessitent une manipulation individuelle.
Testez exhaustivement le MBean créé !
Installation
1.
l
Téléchargez les fichiers d'Apache Axis de http://ws.apache.org/axis. Installez Apache Axis
comme indiqué dans la documentation.
2.
l
Configurer Apache Axis
Générer les classes Java pour l'exécution des services web
Démarrez l'outil "WSDL2Java" d'Apache Axis. Il s'agit d'un générateur-enveloppeur de services
web. Vous pouvez, par exemple, utiliser Eclipse comme environnement de développement.
Saisissez l'adresse WSDL "http://www.webservicex.com/CurrencyConvertor.asmx?wsdl"
comme paramètre de saisie.
204
Chapter 7 UC4 et les systèmes cible
l
Les classes Java suivantes sont alors créées :
3.
l
l
Créer un MBean pour l'utilisation des classes Java
Au cours de cette étape, vous créez un MBean qui utilise les classes Java générées pour exécuter
le service web via JMX. Quelques remarques introductives sur les directives de programmation de
MBeans :
l
Un modèle MBean standard se compose d'une interface et d'une classe qui le mettent en
œuvre.
l
L'interface possède le même nom que la classe plus le suffixe "MBean".
Dans l'exemple suivant, la classe s'appelle "Converter" et l'interface "ConverterMBean.java".
Créez les deux fichiers, par exemple dans un package nommé "com.uc4.ws". Le code complet
pour l'interface et la classe est le suivant :
ConverterMBean.java :
package com.uc4.ws;
import java.rmi.RemoteException;
Automation Engine
205
import javax.xml.rpc.ServiceException;
public interface ConverterMBean {
double convertCurrency(String fromCurrency, String toCurrency)
throws ServiceException, RemoteException, IllegalArgumentException;
}
Converter.java :
package com.uc4.ws;
import
import
import
import
import
java.rmi.RemoteException;
javax.xml.rpc.ServiceException;
NET.webserviceX.www.Currency;
NET.webserviceX.www.CurrencyConvertorLocator;
NET.webserviceX.www.CurrencyConvertorSoap;
public class Converter implements ConverterMBean {
public double convertCurrency(String fromCurrency, String toCurrency)
throws ServiceException, RemoteException, IllegalArgumentException {
CurrencyConvertorLocator locator = new CurrencyConvertorLocator();
CurrencyConvertorSoap soap = locator.getCurrencyConvertorSoap();
return soap.conversionRate(
Currency.fromString(fromCurrency),
Currency.fromString(toCurrency));
}
}
La méthode "convertCurrency" contient l'exécution du service web et utilise les classes Java
générées. Elle crée une instance du localisateur de service et appelle la méthode
"getCurrencyConvertorSoap" pour recevoir une souche SOAP. Ce modèle (localisateur-souche)
est décrit dans la documentation d'Apache Axis.
La souche procède à l'appel du service web. Les paramètres sont convertis de "java.lang.String" à
des objets "NET.webserviceX.www.Currency", étant donné que seuls des types de données
simples peuvent être utilisés dans MBeans. Le résultat, c'est-à-dire le cours du change actuel, est
renvoyé.
4.
l
Créer un fichier JAR pour le MBean et les classes Java
Créez, à l'aide d'un script Ant, un fichier JAR commun pour les deux fichiers du MBean et des
classes Java générées. Dans l'exemple qui suit, un fichier nommé "exampleMBean.jar" est généré.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project name="uc4" default="exampleMBean.jar">
<property name="classes_dir" value="bin" />
<target name="exampleMBean.jar" description="Web Service MBean">
<jar jarfile="exampleMBean.jar" basedir="${classes_dir}"/>
</target>
</project>
Dans un environnement de développement comme Eclipse, il ne vous faut pas de script Ant et
vous pouvez créer le fichier JAR directement à l'aide d'une commande de menu.
5.
Démarrer l'Agent JMX avec le MBean
206
Chapter 7 UC4 et les systèmes cible
l
Enregistrez le fichier JAR créé ainsi que les fichiers JAR d'Apache Axis dans le chemin de classe
de l'Agent JMX. L'appel pour démarrer l'Agent JMX est le suivant sous Windows :
Java -cp axis.jar;commons-discovery-0.2.jar;commons-logging-1.0.4.jar;
wsdl4j-1.5.1.jar;saaj.jar;exampleMBean.jar;ucxjjmx.jar;jaxrpc.jar
com/uc4/ex/jmx/UCXJMX
Sous UNIX, le point-virgule ";" doit être remplacé par un deux-points ":".
L'Agent JMX ne requiert aucun Serveur d'application et peut s'exécuter de manière autonome.
Une implémentation JMX est cependant nécessaire à l'exécution. Pour garantir cela, il suffit
d'installer Java version 5. Cette version contient les packages JMX nécessaires de version 1.2.
Utilisation
1.
l
l
l
Créer le Job JMX
Identifiez-vous au système UC4 à l'aide de l'Interface Utilisateur.
Créez un Job JMX et sélectionnez, dans son onglet Attributs, l'Agent JMX qui contient le MBean.
N'oubliez pas non plus de sélectionner un objet Login adapté.
Allez dans l'onglet Forme. Cliquez sur le bouton
pour insérer une nouvelle ligne. Pour que le
MBean puisse être utilisé, il doit tout d'abord être enregistré auprès du Serveur MBean. Dans la
catégorie "Serveur Mbean", sélectionnez donc la fonction "Enregistrer un Mbean" à l'aide d'un
double-clic.
La fonction JMX_CREATE_MBEAN crée une instance du MBean et l'enregistre dans le
Serveur MBean local.
l
l
Dans le champ "Classe", saisissez le nom de classe complet du MBean. Dans notre exemple, il
s'agit de "com.uc4.ws.Converter".
Dans le champ "Nom d'objet", vous devez entrer la désignation devant être assignée au MBean.
Cette désignation doit être unique dans le Serveur MBean. La désignation se compose de deux
parties séparées par deux-points ":". La première partie indique le nom de domaine et la seconde les
propriétés-clés. Dans notre exemple, il s'agit de "com.uc4:name=CurrencyConverter".
Le nom de domaine peut contenir tout caractère sauf ":", "*" et "?". Pour éviter les collisions
entre MBeans et d'autres éditeurs, il est recommandé d'utiliser l'inverse du nom DNS de votre
société pour le nom de domaine.
Les propriétés clés permettent d'assigner au MBean un nom unique dans le domaine. Elles sont
séparées par une virgule ",". Une propriété clé se compose comme suit : propriété=valeur. La
propriété ne doit correspondre à aucun attribut du MBean. Le nombre de propriétés clés n'est pas
limité et l'ordre n'a pas non plus d'importance. Une propriété clé peut contenir tout caractère sauf
des guillemets, des virgules, ":", "=", "*" et "?". Saisissez au moins une propriété clé.
l
Activez le paramètre "Termine normalement si déjà enregistré".
Automation Engine
l
Enregistrez le Job JMX et exécutez-le. Cela a pour effet d'enregistrer le MBean dans le Serveur
MBean. Il s'affiche désormais dans le navigateur MBean, comme on peut le voir à l'étape suivante.
2.
l
207
Utiliser le MBean
Il est possible d'utiliser le MBean grâce aux opérations qu'il offre. Cliquez sur le bouton
dans
l'onglet Forme du Job JMX pour insérer une nouvelle ligne. Dans la catégorie "Opérations",
sélectionnez la fonction "Appeler une Opération" en effectuant un double-clic.
La fonction JMX_INVOKE exécute une opération d'un MBean.
l
l
l
l
l
Cliquez sur le bouton "Afficher..." pour ouvrir le navigateur MBean.
Sélectionnez, à gauche, le MBean "CurrencyConverter". Le tableau de droite affiche les opérations
JMX qui sont à la disposition du MBean.
Mettez en surbrillance l'opération "convertCurrency" et cliquez sur OK. Les champs "Nom Mbean"
et "Opération" sont remplis automatiquement avec la valeur correcte.
Saisissez, dans le champ "Paramètres", deux codes de monnaie séparés par une virgule.
"USD,EUR" a par exemple pour effet la fourniture par le MBean du cours du change du dollar en
euro.
Exécutez le Job JMX. Le cours du change est généré dans le rapport.
Lisez le rapport avec la fonction script PREP_PROCESS_REPORT pour utiliser les valeurs
fournies par les MBeans dans d'autres traitements ultérieurs. Les Exemples contiennent la
description des étapes requises.
208
Chapter 7 UC4 et les systèmes cible
7.4.3 Agent Java EE/JMX et IBM WebSphere
L'Agent Java EE/JMX peut être utilisé de plusieurs façons.
Autonome, en dehors de IBM WebSphere :
1. à l'aide de SOAP
Déployé dans IBM WebSphere :
1. à l'aide de SOAP ou de RMI
La variante autonome est à mettre en place lorsque vous souhaitez contacter plusieurs Serveurs IBM
WebSphere et utiliser leurs MBeans avec l'Agent Java EE/JMX. L'Agent est installé dans une cellule IBM
WebSphere et se connecte sur le Serveur MBean du Deployment Manager (DMGR). Ce dernier contrôle
les Serveurs d'application IBM WebSphere.
Rubriques connexes :
Configuration de l'Agent autonome pour Java EE/JMX (IBM WebSphere) avec SOAP Connector
Configuration de l'Agent pour Java EE/JMX (IBM WebSphere) avec SOAP Connector
Configuration de l'Agent pour Java EE/JMX (IBM WebSphere) avec RMI Connector
7.4.4 Envoi de messages SOAP à l'aide de MBeans
Voici un exemple de message SOAP pour consulter les cours des actions.
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:getQuote
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="urn:xmethods-delayed-quotes">
<symbol xsi:type="xsd:string">IBM</symbol>
</ns1:getQuote></soapenv:Body>
</soapenv:Envelope>
Le message SOAP doit être envoyé avec l'action SOAP suivante : "urn:xmethods-delayedquotes#getQuote"
L'URL du service web est : http://services.xmethods.net/soap
Un MBean peut être utilisé pour l'envoi de ce message SOAP. Le MBean nécessite au moins Java version
5. Ajoutez tout d'abord le MBean au chemin de classe de l'Agent :
1. Copiez le fichier soapmbean.jar dans le répertoire de l'Agent JMX.
2. Démarrez l'Agent JMX avec le fichier soapmbean.jar dans le chemin de classe.
java -cp soapmbean.jar;ucxjjmx.jar com/uc4/ex/jmx/UCXJMX
Créez un Job JMX et ajoutez la ligne suivante dans l'onglet "Script" :
JMX_CREATE_MBEAN
EXISTS="IGNORE",CLASSNAME="com.uc4.ex.jmx.soap.SOAP",NAME="uc4.com:name=SOA
P"
Démarrez le Job. Dans le navigateur MBean, un MBean du nom de "SOAP" est affiché.
Automation Engine
209
Il faut ensuite définir le JCL pour l'utilisation du MBean SOAP :
JMX_CREATE_MBEAN
EXISTS="IGNORE",CLASSNAME="com.uc4.ex.jmx.soap.SOAP",NAME="uc4.com:name=SOA
P"
JMX_COMPOSITE_ADD KEY="1",VALUE='<?xml version="1.0" encoding="UTF8"?>',NAME="s"
JMX_COMPOSITE_ADD KEY="2",VALUE='<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" ',NAME="s"
JMX_COMPOSITE_ADD
KEY="3",VALUE='xmlns:xsd="http://www.w3.org/2001/XMLSchema" ',NAME="s"
JMX_COMPOSITE_ADD
KEY="4",VALUE='xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance">',NAME="s"
JMX_COMPOSITE_ADD KEY="5",VALUE="<soapenv:Body><ns1:getQuote ",NAME="s"
JMX_COMPOSITE_ADD
KEY="6",VALUE='soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encod
ing/" ',NAME="s"
JMX_COMPOSITE_ADD KEY="7",VALUE='xmlns:ns1="urn:xmethods-delayedquotes">',NAME="s"
JMX_COMPOSITE_ADD KEY="8",VALUE='<symbol
xsi:type="xsd:string">IBM</symbol>',NAME="s"
JMX_COMPOSITE_ADD
KEY="9",VALUE="</ns1:getQuote></soapenv:Body></soapenv:Envelope>",NAME="s"
JMX_INVOKE
OPERATIONNAME="sendSOAP",MBEAN="uc4.com:name=SOAP",PARAMS='s,"urn:xmethodsdelayed-quotes#getQuote",http://services.xmethods.net/soap'
La première ligne de script charge le MBean s'il ne l'a pas encore été. Les instructions JMX_
COMPOSITE_ADD contiennent le message SOAP ligne par ligne. Le paramètre KEY= contient les
numéros de ligne. Une fois le message SOAP assemblé, il est transmis comme premier paramètre à
l'opération "sendSOAP" (JMX_INVOKE). Le deuxième paramètre contient l'action SOAP et le troisième
paramètre contient l'URL à laquelle la requête SOAP doit être envoyée.
Exécutez le Job. Le rapport de Job affiche le message réponse.
Vous pouvez utiliser l'instruction XPath pour lire une seule valeur. Pour ce faire, insérez une nouvelle ligne
de script avec l'élément de script JMX_COMPOSITE_ADD contenant pour KEY= l'instruction "XPATH"
et pour VALUE= la valeur recherchée (voir la deuxième ligne du script). Le script ressemble alors à ce qui
suit :
JMX_CREATE_MBEAN
EXISTS="IGNORE",CLASSNAME="com.uc4.ex.jmx.soap.SOAP",NAME="uc4.com:name=SOA
P"
JMX_COMPOSITE_ADD KEY="XPATH",VALUE="//Result",NAME="s"
JMX_COMPOSITE_ADD KEY="1",VALUE='<?xml version="1.0" encoding="UTF8"?>',NAME="s"
JMX_COMPOSITE_ADD KEY="2",VALUE='<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" ',NAME="s"
JMX_COMPOSITE_ADD
KEY="3",VALUE='xmlns:xsd="http://www.w3.org/2001/XMLSchema" ',NAME="s"
JMX_COMPOSITE_ADD
KEY="4",VALUE='xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance">',NAME="s"
JMX_COMPOSITE_ADD KEY="5",VALUE="<soapenv:Body><ns1:getQuote ",NAME="s"
JMX_COMPOSITE_ADD
KEY="6",VALUE='soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encod
ing/" ',NAME="s"
JMX_COMPOSITE_ADD KEY="7",VALUE='xmlns:ns1="urn:xmethods-delayedquotes">',NAME="s"
JMX_COMPOSITE_ADD KEY="8",VALUE='<symbol
210
Chapter 7 UC4 et les systèmes cible
xsi:type="xsd:string">IBM</symbol>',NAME="s"
JMX_COMPOSITE_ADD
KEY="9",VALUE="</ns1:getQuote></soapenv:Body></soapenv:Envelope>",NAME="s"
JMX_INVOKE
OPERATIONNAME="sendSOAP",MBEAN="uc4.com:name=SOAP",PARAMS='s,"urn:xmethodsdelayed-quotes#getQuote",http://services.xmethods.net/soap'
Sur la base du script d'exemple, le rapport de Job affiche maintenant une valeur.
Vous pouvez également compléter des parties du message SOAP à l'aide de Variables de script. Dans
l'exemple suivant, une valeur est lue avec un masque :READ :
Onglet Pré-script :
:READ &SYMBOL#,"IBM,SAP,ORCL","Please choose one","IBM"
Onglet Script :
La Variable de script &SYMBOL# est utilisée à la ligne 10 :
JMX_CREATE_MBEAN
EXISTS="IGNORE",CLASSNAME="com.uc4.ex.jmx.soap.SOAP",NAME="uc4.com:name=SOA
P"
JMX_COMPOSITE_ADD KEY="XPATH",VALUE="//Result",NAME="s"
JMX_COMPOSITE_ADD KEY="1",VALUE='<?xml version="1.0" encoding="UTF8"?>',NAME="s"
JMX_COMPOSITE_ADD KEY="2",VALUE='<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" ',NAME="s"
JMX_COMPOSITE_ADD
KEY="3",VALUE='xmlns:xsd="http://www.w3.org/2001/XMLSchema" ',NAME="s"
JMX_COMPOSITE_ADD
KEY="4",VALUE='xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance">',NAME="s"
JMX_COMPOSITE_ADD KEY="5",VALUE="<soapenv:Body><ns1:getQuote ",NAME="s"
JMX_COMPOSITE_ADD
KEY="6",VALUE='soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encod
ing/" ',NAME="s"
JMX_COMPOSITE_ADD KEY="7",VALUE='xmlns:ns1="urn:xmethods-delayedquotes">',NAME="s"
JMX_COMPOSITE_ADD KEY="8",VALUE='<symbol
xsi:type="xsd:string">&SYMBOL#</symbol>',NAME="s"
JMX_COMPOSITE_ADD
KEY="9",VALUE="</ns1:getQuote></soapenv:Body></soapenv:Envelope>",NAME="s"
JMX_INVOKE
OPERATIONNAME="sendSOAP",MBEAN="uc4.com:name=SOAP",PARAMS='s,"urn:xmethodsdelayed-quotes#getQuote",http://services.xmethods.net/soap'
7.5 UC4 et Micro Focus JES
7.5.1 Jobs dans Micro Focus JES
Un composant du Serveur Micro Focus Enterprise (MF ES) est l'option de transaction de grand système
(MTO). Ce moteur JES permet d'exécuter des Jobs z/OS (Jobs JES) de manière inchangée sous
Windows et Unix.
Automation Engine
211
La plate-forme UC4 Automation offre la possibilité de démarrer les Jobs dans Micro Focus JES et
d'exécuter ainsi les fichiers JCL. Ceux-ci sont enregistrés dans le système de fichiers du Serveur. Le
démarrage de Job se produit à l'aide du programme CLI CASSUB.
Un UC4.Agent pour Windows exécute les Jobs dans MF JES.
Création d'un Job
1. Cliquez sur le bouton de la barre d'outils. Une fenêtre répertoriant tous les types d'objet
disponibles s'ouvre. Les objets pour chacune des plateformes y sont également affichés.
Choisissez JOBS.WIN.
2. Donnez à l'objet Job un nom approprié et ouvrez-le. Allez dans l'onglet Attributs.
3. Un Agent Windows est responsable de l'exécution du Job. Pour "Host", sélectionnez l'Agent qui
s'exécute sur l'ordinateur sur lequel se trouve MF ES.
4. L'Agent a besoin des informations de connexion pour l'exécution du Job. Celles-ci sont
enregistrées sous la forme d'un objet Login. Pour "Login", sélectionnez le Login correspondant.
5. Allez dans l'onglet "Windows". Le rapport de Job créé peut être enregistré dans la base de données
ou en tant que fichier distinct. Utilisez les options en haut à gauche de l'onglet pour déterminer
comment doit être traité le rapport de Job.
6. Pour le type, sélectionnez impérativement l'option COM.
7. Pour la commande, saisissez le chemin du programme CASSUB. Utilisez les paramètres de
démarrage -r et -j pour indiquer l'environnement du Serveur JCL et le chemin complet du fichier JCL.
Le nom de région du Serveur JCL est la désignation du service MF MTO. Cette valeur est
disponible dans MF Enterprise Server Administration.
212
Chapter 7 UC4 et les systèmes cible
8. Enregistrez et fermez l'objet Job une fois la configuration terminée. L'objet Job peut désormais être
associé à votre traitement.
Architecture
Le démarrage de Job via CASSUB permet de démarrer le Job dans le Serveur Micro Focus Enterprise.
Lors du démarrage et pendant l'exécution, un exit destiné à l'écriture des fichiers de synchronisation pour
l'Agent (fichiers *.log-, *.inf- et *.can) est exécuté.
Variables d'Agent dans Micro Focus JES
Les Variables d'environnement suivantes sont disponibles dans l'environnement utilisateur sous lequel le
Serveur JES est démarré :
Variable
d'environnement
Description
Automation Engine
UC4_MF_JES_
OUTPUT=
213
Chemin dans lequel l'exit doit écrire les fichiers de contrôle pour l'Agent ou
communique avec l'Agent (*.log, *.inf, *.can)
Attention : la Variable UC4_MF_JES_OUTPUT ne contient qu'un seul
chemin qui est défini par un antislash "\" final. Sinon, la communication entre
l'Agent et l'exit ne fonctionne pas.
Exemples :
Configuration correcte : UC_MF_JES_OUTPUT =
c:\uc4\Agent\Microfocus\temp\
Configuration incorrecte : UC_MF_JES_OUTPUT =
c:\uc4\Agent\Microfocus\temp
Configuration incorrecte : UC_MF_JES_OUTPUT = c:\uc4\temp\;c:\temp
UC4_MF_TRACE=
Trace écrite par l'exit avec Open Extend dans le fichier de trace indiqué dans
UC4_MF_TRACE_FILE
Valeurs possibles :
Y = l'exit écrit une trace
N = l'exit n'écrit aucune trace
UC4_MF_TRACE_
FILE=
Nom de fichier complet du fichier de trace
UC4_MF_DELAY=
Délai d'attente en secondes de l'EXIT quand le fichier *.INF est introuvable.
Attention : la valeur par défaut est de 500 ms !
Il est important de régler ce paramètre au minimum, parce qu'il n'agit pas
seulement sur les Jobs démarrés avec UC4, mais sur TOUS les Jobs JES.
S'il y a dans UC4 des Jobs ne se terminant pas, l'exit est si rapide que l'Agent
n'a pas le temps de créer le fichier *.INF après le démarrage de Job. Celui-ci
peut cependant être créé après le démarrage de Job parce que seul le
démarrage de Job donne l'ID Job. Il est recommandé de définir la valeur à
100.
214
Chapter 7 UC4 et les systèmes cible
Exemple de fichier de trace d'exit JES
2007.12.14/13:53:58.95->MFJUXIT
2007.12.14/13:53:58.95->MFJUXIT
2007.12.14/13:53:58.95->MFJUXIT
2007.12.14/13:53:58.95->MFJUXIT
2007.12.14/13:53:58.95->MFJUXIT
000005000
2007.12.14/13:53:59.11->MFJUXIT
2007.12.14/13:53:59.17->MFJUXIT
2007.12.14/13:53:59.20->MFJUXIT
2007.12.14/13:53:59.20->MFJUXIT
2007.12.14/13:53:59.23->MFJUXIT
2007.12.14/13:53:59.23->MFJUXIT
2007.12.14/13:53:59.25->MFJUXIT
2007.12.14/13:53:59.26->MFJUXIT
2007.12.14/13:53:59.26->MFJUXIT
2007.12.14/13:53:59.26->MFJUXIT
2007.12.14/13:53:59.30->MFJUXIT
2007.12.14/13:53:59.31->MFJUXIT
2007.12.14/13:53:59.31->MFJUXIT
2007.12.14/13:53:59.33->MFJUXIT
2007.12.14/13:53:59.34->MFJUXIT
2007.12.14/13:53:59.34->MFJUXIT
2007.12.14/13:54:05.26->MFJUXIT
EC = 01 Jobnum = 01406 Jobname = ????????
UC4_MF_JES_OUTPUT = C:\uc4\
UC4_MF_TRACE_FILE = c:\trc.txt
UC4_MF_DELAY = 5000
UC4_MF_DELAY (converted to number) =
EC = 25 Jobnum = 01406 Jobname = JCLTEST
EC = 03 Jobnum = 01406 Jobname = JCLTEST
EC = 08 Jobnum = 01406 Jobname = JCLTEST
EC = 09 Jobnum = 01406 Jobname = JCLTEST
EC = 10 Jobnum = 01406 Jobname = JCLTEST
EC = 08 Jobnum = 01406 Jobname = JCLTEST
EC = 09 Jobnum = 01406 Jobname = JCLTEST
EC = 10 Jobnum = 01406 Jobname = JCLTEST
EC = 08 Jobnum = 01406 Jobname = JCLTEST
EC = 09 Jobnum = 01406 Jobname = JCLTEST
EC = 10 Jobnum = 01406 Jobname = JCLTEST
EC = 08 Jobnum = 01406 Jobname = JCLTEST
EC = 09 Jobnum = 01406 Jobname = JCLTEST
EC = 10 Jobnum = 01406 Jobname = JCLTEST
EC = 05 Jobnum = 01406 Jobname = JCLTEST
inf-file not found waiting 000005000 ms
EC = 02 Jobnum = 01406 Jobname = JCLTEST
Le Serveur Micro Focus Enterprise est destiné à la gestion, les Jobs sont gérés, démarrés et arrêtés dans
le système cible JES.
Automation Engine
215
L'exemple suivant décrit le démarrage d'un Job JES en mode batch sans Agent, CASSUB est posé
manuellement :
C:\Documents and Settings\Ni\My Documents\Micro Focus\Net Express
5.0\WORKAREA>cassub -lUC4 -jC:\es-jcldemo\jclbatch.jcl
JCLCM0901I JOB01407 ???????? Event-Job-ready action is: 0 (Continue).
12:59:10
JCLCM0925I JOB01407 JCLTEST Event-job-stmt-info action is: 0 (Continue).
12:59
:10
JCLCM0187I JOB01407 JCLTEST JOB SUBMITTED (JOBNAME=JCLTEST,JOBNUM=01407)
12:59
:10
JCLCM0180I JOB01407 JCLTEST Job ready for execution. 12:59:10
Processed "C:\es-jcldemo\jclbatch.jcl"
C:\Documents and Settings\Ni\My Documents\Micro Focus\Net Express
5.0\WORKAREA>
L'exit crée le fichier *.inf pour l'Agent, celui-ci le vérifie et l'écrit dans le fichier log. Cela ne se produit
pas lorsqu'un Job est démarré en mode batch.
7.6 UC4 et MPE
7.6.1 Agent – Interaction entre UC4 et MPE
L'Agent MPE interagit avec le système UC4 via une interface TCP/IP.
Il dispose des fonctionnalités suivantes :
l
l
l
traitement de Jobs,
exécution de Transferts de Fichiers,
Traitement d'Evènements
Traitement de Jobs
Dans UC4, les Jobs sont définis et gérés comme des objets à l'aide d'onglets. Le JCL se trouve dans
l'onglet Script. Il peut être muni d'une logique complexe à l'aide de scripts d'UC4. Les caractères "!" et ":"
du script UC4 introduisant des lignes de commentaires et des instructions de script, le caractère "#" peut
être utilisé à la place comme caractère Prompt dans JCL. Les lignes JCL peuvent également commencer
avec l'instruction de script :DATA. Les caractères "!" et ":" peuvent ainsi être conservés comme
caractères Prompt.
Rubrique connexe: Manuel Utilisateur – Job et Job – Exécution.
Un Job est démarré dans UC4 à l'aide de mécanismes de contrôle comme les Workflows ou les
Schedules, ou encore manuellement. Un Job exécutable est alors généré dans Le UC4 Automation
Engine et transféré à l'Agent MPE par Transfert de Fichier.
Rubriques connexes : Interne UC4 – Exécution des objets
L'Agent MPE lit le Job et le transfère à la file d'attente MPE.
Le Job annonce à l'Agent le début et la fin de l'exécution, lequel transmet à son tour ces informations au
UC4 Automation Engine.
216
Chapter 7 UC4 et les systèmes cible
L'Agent surveille à intervalles réguliers le statut du Job. Si un Job est perdu (par Fatal Error, ABORTJOB),
ce mécanisme permet de constater la fin. Le code retour du Job est disponible dans UC4.
Le rapport de Job ($STDLIST) est enregistré dans le fichier indiqué par Le UC4 Automation Engine. Si cela
est défini dans le Job, l'Agent transfère le rapport à l'UC4 Automation Engine qui l'enregistre à son tour
dans la base de données UC4. L'Agent copie le rapport de Job à partir du spooler. Il est donc nécessaire
d'utiliser une OUTCLASS avec la priorité 1.
Exécution de Transferts de Fichiers
Dans UC4, les Transferts de Fichiers sont définis et gérés comme des objets à l'aide d'onglets. Ils sont
exécutés avec la conversion de caractères qui y figure, par exemple "UC_CODE".
Rubriques connexes : Manuel de l'utilisateur – Transfert de Fichier
Traitement d'Evènements
Les Evènements sont définis et gérés dans UC4 en tant qu'objets avec différents onglets.
Actuellement, seuls les Evènements du type "Système de fichiers" sont pris en charge.
Rubriques connexes: Manuel de l'Utilisateur – Evènement
7.7 UC4 et NSK
7.7.1 Agent - Interaction entre UC4 et NSK
L'Agent NSK interagit avec le système UC4 via une interface TCP/IP.
L'Agent NSK dispose des fonctionnalités suivantes :
l
l
l
traitement de Jobs,
exécution de Transferts de Fichiers,
CallAPI
Traitement de Jobs
Dans UC4, les Jobs sont définis et gérés comme des objets à l'aide d'onglets. Les commandes et
instructions sont définies dans l'onglet Script. Ils peuvent être munis d'une logique complexe à l'aide de
scripts d'UC4.
Rubriques connexes : Manuel Utilisateur – Job et Job – Exécution.
Les Jobs NSK s'organisent en plusieurs sous-types en fonction du type de commande (Guardian,
NetBatch et OSS).
Un Job est démarré dans UC4 à l'aide de mécanismes de contrôle comme les Workflows ou les
Schedules, ou encore manuellement. Un Job exécutable est alors généré dans Le UC4 Automation
Engine et transféré à l'Agent NSK par Transfert de Fichier.
Rubriques connexes : Interne UC4 – Exécution des objets
Les Jobs sont exécutés avec les informations logiques (nom de Groupe.nom Utilisateur) qui ont été
indiquées dans l'objet Login que vous avez sélectionné dans l'onglet Attributs.
Le tableau indique à quel moment il est nécessaire de définir des mots de passe dans l'objet Login.
Automation Engine
217
ID Utilisateur de
l'Agent
Entrée dans l'objet Login
GROUP.USER
Mot de passe requis lorsque le Job fonctionne avec un autre nom de
Groupe.nom Utilisateur.
GROUP.255
Mot de passe requis lorsque le Job fonctionne avec un autre nom de Groupe.
255.255 Aucun mot de passe requis.
Configuration recommandée:
l
l
l
l
Lancer l'Agent NSK avec l'ID Utilisateur. SUPER.SUPER n'est généralement pas requis.
L'Utilisateur approprié doit être associé aux exigences de fonctionnement.
Définir le nom de Groupe.nom Utilisateur dans les objets Login.
Définir le paramètre logon=1 dans le fichier INI de l'Agent NSK.
Définir l'Utilisateur par défaut ERP_LOGIN dans le Client 0000. Il s'agit alors de l'Utilisateur
standard. Vous devez utiliser une combinaison ID Utilisateur/mot de passe valide. Un Utilisateur
avec très peu de droits doit pourtant pouvoir accéder à l'application. Cet Utilisateur dispose
uniquement de la fonction de reprise des processus TACL planifiés avec très peu de droits (et ainsi
un risque d'erreur limité).
Le Job annonce à l'Agent le début et la fin de l'exécution, lequel transmet à son tour ces informations au
UC4 Automation Engine. Le Code Retour du Job est disponible dans UC4, ce qui peut être réalisé par le
biais de l'en-tête et du pied de page.
Le contenu de l'en-tête et du pied de page est ajouté automatiquement au script défini pour le Job. La
Variable "RETCODE" est définie dans l'en-tête propre à NSK. Le contenu de cette Variable est transmis
au UC4 Automation Engine à la fin du Job. Cette valeur est le Code Retour du Job. Elle peut servir à définir
les dépendances entre les différents Jobs dans un Workflow.
Pour configurer le paramètre "RETCODE" sur "1" par exemple, lorsqu'une erreur de syntaxe survient dans
le script, il est possible d'utiliser les en-têtes et pieds de page suivants définis par l'utilisateur:
HEADER.NSK.USER.HEAD, TRAILER.NSK.USER.HEAD et RESTART.NSK
L'Agent crée des fichiers automatiquement sur l'ordinateur pour les rapports de Jobs (si cette option est
activée pour l'objet) et les Jobs. Leur désignation est formée comme suit :
Désignation
Fichier de Job
<UC_EX_PATH_TEMP>J<RunID>
Fichier de rapport de Job
<UC_EX_PATH_JOBREPORT>O<RunID>
Pour UC_EX_PATH_TEMP et UC_EX_PATH_JOBREPORT, il s'agit de Variables d'Agent. Le RunID
est représenté sous forme de séquence comportant 7 à 10 caractères. Vous pouvez spécifier cette
séquence lors de la recherche de statistique et également la convertir avec la fonction de script
ALPHA2RUNNR pour obtenir le chiffre correspondant.
Exécution de Transferts de Fichiers
Dans UC4, les Transferts de Fichiers sont définis et gérés comme des objets à l'aide d'onglets. Ils sont
exécutés avec la conversion de caractères qui y figure, par exemple "UC_CODE".
Particularités: l'Agent NSK développe chaque ordre de Transfert de Fichiers via un processus qui lui est
propre lorsque le nouveau protocole de Transfert de Fichiers est utilisé. Pour activer cette fonctionnalité,
l'Agent dispose d'un port d'écoute supplémentaire doté du numéro suivant le plus élevé par rapport au port
de l'Agent.
218
Chapter 7 UC4 et les systèmes cible
Il est également possible d'indiquer des attributs supplémentaires dans l'objet Transfert de Fichier pour le
fichier cible (objectifs – attributs) ou de reprendre les attributs du fichier source (option "Conserver les
attributs originaux de fichier"). Vous pouvez également remplacer les attributs originaux par des
indications supplémentaires dans l'objet Transfert de Fichier. Les attributs de fichiers NSK suivants sont
pris en charge:
Attribut
Description
CREATE_
OPTS
Options de création de fichier, masque de bits (<15> est le bit le plus petit d'un mot de 2
octets):
<10> Refresh EOF – Le libellé de fichier est immédiatement écrit sur le disque dur
<11> Index compression – Comprimer des entrées dans un bloc d'index à partir de fichiers
séquencés par clés. La valeur 0 doit être utilisée pour d'autres types de fichiers
<12> Data compression – Comprimer la clé des entrées des blocs de données à partir des
fichiers séquencés par clés. Valeur 0 pour d'autres types de fichiers.
<13> Audit compression – Comprimer les données de contrôle des fichiers vérifiés
(fichiers audités).
<14> Audited – Vérification du fichier dans le sous-système Transaction Management
Facility (TMF). Cette option doit être configurée sur 0 pour les systèmes ne disposant pas
du sous-système TMF.
<15> Odd unstructured – Nombre de transferts E/S de fichiers non structurés. Si cette
option n'est pas activée, les Transferts sont arrondis à une limite d'octets précise. Cette
option doit être configurée sur 0 pour les autres types de fichiers.
File format
Cet attribut est automatiquement défini en fonction de la taille actuelle du fichier
1 – pour les fichiers inférieurs à 2Go, 2 – tous les autres fichiers
FILECODE Non pertinent lorsque les transferts ne concernent que des fichiers textes et des fichiers
binaires
FILETYPE
0 – non structuré
1 – relatif
2 – séquencé par entrée
3 – séquencé par clé
Non pertinent lorsque les transferts ne concernent que des fichiers textes et des fichiers
binaires
KEY_LEN
Non pertinent lorsque les transferts ne concernent que des fichiers textes et des fichiers
binaires
KEY_
OFFS
Non pertinent lorsque les transferts ne concernent que des fichiers textes et des fichiers
binaires
MAXEXT
Nombre maximum d'extensions pour le fichier.
PEXT
Nombre de pages 2k pour l'extension primaire
RECLEN
Non pertinent lorsque les transferts ne concernent que des fichiers textes et des fichiers
binaires
SEXT
Nombre de pages 2k pour les extensions secondaires
Voir : Manuel de l'utilisateur – Transfert de Fichier
Automation Engine
219
CallAPI
Il permet d'exécuter des programmes dans UC4 à partir de programmes tiers. Le CallAPI peut être utilisé
sans programmation préalable grâce à un utilitaire appelable par exemple à partir de la ligne de commande
du système d'exploitation, d'un script ou d'un Job.
Rubriques connexes :
Manuel de l'utilisateur – CallAPI
Interne UC4 – Architecture de l'Agent UC4 pour HP NonStop Server
7.7.2 Exécutions de Jobs sur NSK
UC4 prend entièrement en charge les systèmes HP NonStop.
Il est ainsi possible d'effectuer des traitements dans les domaines suivants :
l
l
l
Guardian - Commandes TACL
OSS - Commandes UNIX (osh Shell)
NetBatch - Scripts NBEXEC
Etant donné que les commandes sont différentes, les Jobs NSK sont organisés en 3 types. Dans l'onglet
"Guardian/NKS" de l'objet Job, il faut sélectionner le type. Il peut être lu avec la fonction de Script GET_
ATT.
Les lignes de Script NBEXEC commencent exactement comme le Script UC4 par deux-points.
Insérez donc un espace au début de chaque ligne de traitement NBEXEC.
Rubriques connexes :
Onglet "Guardian/NSK"
Agent UC4 pour HP NonStop Server - Architecture
7.7.3 Traitement automatisé des lignes de commande
Dans de nombreux cas, des lignes de commande sont nécessaires pour poursuivre le traitement.
L'Agent NSK vous donne la possibilité de réagir de façon automatisée à ces soi-disant invites.
Pour chaque Job NSK, vous pouvez ainsi créer des saisies prédéfinies pour les invites spécifiques. Ainsi
lorsqu'une invite survient dans l'exécution du Job, l'Agent recherche une saisie prédéfinie. S'il en trouve
une, le traitement peut se poursuivre automatiquement. Si aucun traitement n'est défini pour cette invite, la
procédure à suivre dépend de l'objet Job. Si vous avez saisi un terminal virtuel dans l'onglet
"Guardian/NSK", l'invite y est redirigée et un Utilisateur doit intervenir manuellement. Si aucun terminal
n'est indiqué, alors l'Agent fournit un indicateur EOF à l'invite.
Cette fonctionnalité est uniquement prise en charge pour les environnements NonStop Agent et TACL.
Utilisation
La fonction UC4_AUTO_ANSWER vous permet de définir la saisie pour une invite. Utilisez cette fonction
une ou plusieurs fois dans le Script d'un Job NSK. Elle n'est valide que pour ce Job. La syntaxe est la
suivante :
220
Chapter 7 UC4 et les systèmes cible
UC4_AUTO_ANSWER "désignation de l'invite" "saisie"
Le premier paramètre attend la désignation de l'invite. Vous pouvez soit utiliser la désignation complète,
soit la saisie avec caractères génériques en utilisant les caractères ? et *. Cette dernière vous permet
d'utiliser la même saisie pour plusieurs invites sans devoir entrer une ligne de Script pour chacune d'elles.
Si les caractères ? ou * doivent être interprétés comme des caractères normaux, vous devez insérer
une barre oblique inversée (\) avant chacun de ces caractères.
Le deuxième paramètre représente la saisie devant être automatiquement transmise à l'invite. Entrez une
chaîne de caractères, une Variable de Script ou une expression TACL. Vous pouvez également indiquer
"<EOF!>" pour répondre à l'invite avec un indicateur EOF (correspond à Ctrl-Y).
Attention : aucun des deux paramètres ne doit contenir de guillemets !
L'Agent utilise pour le Job les définitions de saisie qui ont été utilisées dans le Script jusqu'à ce
moment. Lors de la recherche, le système lit une ligne après l'autre et utilise la première définition
correspondant à la désignation de l'invite.
Utilisez la fonction UC4_AUTO_ANSWER_CLEAN pour désactiver toutes les définitions de saisie qui
ont été utilisées jusqu'à présent dans le Script. L'Agent recherche alors les définitions à partir de cette
ligne du Script. Utilisez la fonction de séparation de sections du Script dans lesquelles divers traitements
de l'invite doivent s'appliquer. UC4_AUTO_ANSWER_CLEAN ne possède aucun paramètre.
S'il vous faut de plus amples informations sur la recherche de définitions de saisie pour les invites, vous
pouvez utiliser la fonction UC4_AUTO_ANSWER_TRACELEVEL. Cette fonction écrit, selon le niveau
spécifié, des messages plus précis dans le rapport de Job et dans le terminal virtuel. La syntaxe est la
suivante :
UC4_AUTO_ANSWER_TRACELEVELLevel
Pour le niveau, vous devez saisir un chiffre entre 0 et 3.
0 - la comparaison ne retourne aucun résultat (valeur par défaut).
1 - un message pour chaque comparaison correspondante.
2 - un message pour chaque comparaison sans correspondance.
3 - messages de niveaux 2 et 3.
Exemples
Exemple 1
L'instruction PURGE nécessite la saisie de "y" ou de "n". L'exemple de Script suivant montre un
traitement de la saisie automatisé :
UC4_AUTO_ANSWER "PURGE * (y/[n])?" y
PURGE *
UC4_AUTO_ANSWER_CLEAN
La première ligne définit qu'il faut répondre par "y" à l'invite de l'instruction PURGE. L'appel de PURGE de
la ligne suivante reçoit ainsi automatiquement la saisie "y". En raison de l'appel de UC4_AUTO_
ANSWER_CLEAN, la définition de saisie ne s'applique pas aux autres Scripts du Job.
Exemple 2
Extrait du rapport de Job d'un Script utilisant la fonction UC4_AUTO_ANSWER_TRACELEVEL.
UC4_AUTO_ANSWER
UC4_AUTO_ANSWER
UC4_AUTO_ANSWER
UC4_AUTO_ANSWER
"*is
"*is
"*is
"*is
no prompt*" "Answer 1"
a prompt*" "Answer 2"
what*" "Answer 3"
nothing*" "Answer 4"
Automation Engine
221
run $data01.uc4.prompt
This is a prompt>Answer 2
Answer to the prompt received: Answer 2
UC4_AUTO_ANSWER_TRACELEVEL 1
run $data01.uc4.prompt
*** Pattern checked: "*is a prompt*", matched, answer generated: "Answer 2"
This is a prompt>Answer 2
Answer to the prompt received: Answer 2
UC4_AUTO_ANSWER_TRACELEVEL 3
run $data01.uc4.prompt
*** Pattern checked: "*is no prompt*", no match
*** Pattern checked: "*is a prompt*", matched, answer generated: "Answer 2"
This is a prompt>Answer 2
Answer to the prompt received: Answer 2
7.7.4 Agent UC4 pour HP NonStop Server - Architecture
Cette description explique le déroulement précis du Job sur un serveur HP non-stop par l'intermédiaire
d'un Agent UC4 NSK.
222
Chapter 7 UC4 et les systèmes cible
Description des déroulements internes :
1. Démarrage du Job
Le démarrage du Job est initié par UC4 Automation Engine. Il envoie un message concernant le démarrage
à l'Agent NSK UC4 L'Agent UC4 crée ensuite une entrée dans UC4 Status File.
L'Agent NSK UC4 envoie un message à UC4 Output Collector (via IPC) contenant notamment les
informations suivantes :
l
l
l
l
utilisateur du Job ;
fichier de Job à utiliser ;
terminal virtuel à utiliser (éventuellement) ;
priorité du Job ;
Automation Engine
l
l
223
nom de fichier du rapport de Job ;
nom du fichier de macros UC4, etc.
Il reçoit les informations suivantes :
l
l
l
Emplacement # d'UC4 Output Collector devant être utilisé comme Fichier de sortie pour le Job à
démarrer.
UC4 Output Collector écrit alors dans le fichier de rapport approprié toutes les sorties qui
l'atteignent sous cet emplacement #.
Indicateur précisant si un processus TACL peut être réutilisé, ou s'il faut en démarrer un nouveau à
partir de l'Agent.
Les informations précisant si un utilisateur par défaut, qui est accepté par les TACL après la fin du
Job, est encore valide.
Le cas échéant, l'Agent démarre un nouveau processus TACL. Celui-ci s'identifie alors auprès d'UC4
Output Collector (qui lui a été indiqué comme périphérique de sortie).
Output Collector crée le fichier de rapport. Il configure ensuite le TACL du Job (définition de l'Utilisateur,
définition de la priorité, etc). Enfin, le TACL du Job reçoit le fichier de Job sous forme de fichier Obey et
commence ainsi le traitement du Job.
2. Déroulement du Job
Pendant le déroulement du Job, toutes les sorties générées par le Job sont dirigées vers UC4 Output
Collector et sont écrites dans les rapports de Job. Si le système attend une entrée et si un terminal est
configuré pour le Job, celui-ci la récupère.
La relation Job-rapport de Job est créée au travers de l'emplacement # sous lequel les Jobs appellent
l'Output Collector.
Ainsi Output sur $UC4OC.#AAL peut aller dans le fichier de rapport $DATA.REPORTS.FFXX, pendant
que des Tâches sont écrites dans $DATA.REPORTS.FFXY sur $UC4OC.#AAM.
Les noms des emplacements # ou des fichiers de rapport sont donnés par l'Agent ou l'Output Collector
3. Fin du Job
Output Collector reconnaît la fin du Job quand le processus TACL du Job se représente avec une
demande de saisie ou (en cas d'erreur) parce qu'il le ferme. A la fin d'un Job, l'Output Collector complète le
fichier de statut de Job et envoie à l'Agent un message correspondant via IPC. Celui-ci annonce au
Serveur que le Job est terminé.
Conseils :
1. Signification du fichier de statut
Le fichier de statut permet une restauration améliorée de l'Agent ou de l'Output Collector en cas
d'interruption. Dans ce cas-là, le contexte issu du fichier de statut de Job est restauré lors du redémarrage
du processus interrompu. De nombreux Jobs peuvent donc surmonter une telle erreur et le fonctionnement
se poursuit sans perturbation. Les Jobs éventuellement terminés pendant l'interruption de l'Agent/l'Output
Collector sont reconnus et signalés. De cette façon, UC4 Automation Engine possède toujours une image
correcte du statut sur le système de l'Agent.
2. Surveillance réciproque
224
Chapter 7 UC4 et les systèmes cible
L'Agent et l'Output Collector se surveillent mutuellement. Si un de ces deux processus devait se terminer
inopinément (arrêt accidentel, défaillance du CPU, erreur logicielle, entre autres), le processus survivant
démarre automatiquement le processus arrêté. Si le CPU du processus arrêté n'est pas (plus) disponible,
un autre CPU disponible est sélectionné (de préférence un CPU différent de celui du processus survivant).
En ce sens, le système est tolérant par rapport à des erreurs très diverses.
Rubriques connexes :
Agent - Interaction entre UC4 et NSK
7.7.5 Fichier modèle EMS
Les fichiers modèle EMS permettent un format de messages conforme au système. Cela permet une
définition du SSID (ID sous-système). L'ID standard est "uc4.1.1"
Déroulement :
1.) Le fichier DLL (uca.ddl) doit être compilé en dictionnaire.
Dans ce dictionnaire, les fichiers $SYSTEM.ZSPIDEF.ZSPIDDL et $SYSTEM.ZSPIDEF.ZEMSDDL
doivent être d'abord compilés.
2.) Le fichier TMPL (uc4.tmpl) doit renvoyer au dictionnaire créé.
Contenu de uc4.ddl
CONSTANT zspi-val-uc4 VALUE IS "UC4
".
* Defines subsystem no. part of UC4 subsystem ID
CONSTANT zspi-ssn-uc4 VALUE IS 1.
* Defines version part of Pathway subsystem ID
CONSTANT zuc4-val-version VALUE IS VERSION " 1".
* Defines the structure for the Pathway subsystem ID
* and initializes its parts
DEFINITION ZUC4-VAL-SSID TACL SSID.
02 Z-FILLER TYPE CHARACTER 8 VALUE IS ZSPI-VAL-UC4.
02 Z-OWNER REDEFINES Z-FILLER TYPE ZSPI-DDL-CHAR8.
02 Z-NUMBER TYPE ZSPI-DDL-INT VALUE IS ZSPI-SSN-UC4.
02 Z-VERSION TYPE ZSPI-DDL-INT VALUE IS ZUC4-VAL-VERSION.
END
Contenu du uc4.tmpl
VERSION : "UC4 NSK Executor Version 3.02B002 0040 AAD"
DICT: $DATA01.UC4DICT
SSID: ZUC4-VAL-SSID
SSNAME: "UC4" , "UC4"
MSG: ZSPI-TKN,0
"DUMMY"
7.7.6 Configuration des paramètres spécifiques à NSK
L'Agent NSK offre la possibilité de définir des paramètres spécifiques à NSK. Parmi ces paramètres, on
compte par exemple le TACL à utiliser ou l'Utilisateur sous lequel le rapport de Job doit être créé.
Automation Engine
225
Indiquez le paramètre au format suivant :
== paramètre=valeur
L'Agent recherche le Script du Job après ces lignes et définit le paramètre sur la valeur que vous avez
déterminée. Les lignes sont considérées comme un commentaire par le TACL.
Les paramètres suivants sont pris en charge :
Paramètres
Description
UC4_TACL_
PROGRAM
TACL alternatif (shell)
Indiquez un autre TACL si le TACL par défaut charge un environnement non
souhaité pour les Jobs UC4. Ce paramètre est également utile lorsque différents
Clients accèdent à un ordinateur NonStop et nécessitent différents environnements
TACL.
L'Agent utilise le TACL par défaut si le TACL indiqué n'est pas utilisable et
journalise un message d'erreur.
UC4_TACL_
Nom du processus TACL
PROCESSNAME
UC4_REPORT_
USERNAME
Utilisateur sous lequel le rapport de Job doit être créé
UC4_REPORT_
SECURITY
Chaîne de sécurité NonStop pour le rapport de Job
Vous pouvez également indiquer la valeur "DEFAULT_USER" pour que le rapport
de Job puisse être créé sous l'Utilisateur sous lequel le Job est utilisé.
Attention : ce paramètre doit être défini avec la plus grande précaution ! Une
chaîne de sécurité erronée peut empêcher l'Agent de lire ou de supprimer le rapport
de Job !
Exemples :
==
==
==
==
UC4_TACL_PROGRAM=$SYSTEM.SYS03.TACL
UC4_TACL_PROCESSNAME=$CAT2
UC4_REPORT_USERNAME=SQLCMP.DUPONT
UC4_REPORT_SECURITY=NNNN
L'utilisation de cette fonctionnalité est facultative. L'Agent utilise la valeur par défaut pour les
paramètres que vous ne définissez pas dans le Script.
7.8 UC4 et Oracle Applications
7.8.1 UC4 et Oracle Applications
Oracle Applications sont des solutions e-business pour entreprises. Ces solutions utilisent les bases de
données Oracle comme base. Ces solutions regroupent des programmes et rapports spécialement
développés fonctionnant la plupart du temps sous forme de traitement batch en arrière-plan. L'Agent
pour Oracle Applications permet de démarrer et de surveiller des processus dans Oracle Applications,
ainsi que de reprendre les logs vers UC4.
Vous trouverez ci-après une liste de termes et leur description qui sont importants pour l'interaction entre
UC4 et Oracle Applications. Vous trouverez de plus amples informations dans les manuels fournis par
Oracle.
226
Chapter 7 UC4 et les systèmes cible
Termes pour Oracle
Termes
Description
PL/SQL
La langue d'instruction PL/SQL est la norme pour les bases de données
Oracle.
Packages PL/SQL
Des packages pour PL/SQL sont possibles dans toute base de données
Oracle. Pour Oracle Applications, des packages supplémentaires sont fournis.
SQL*Plus Programme de ligne de commande de Oracle pour les accès à la base de
données.
Termes pour Oracle Applications
Termes
Description
Concurrent Processing
Exécution de programmes et de rapports en arrière-plan.
Pour "Concurrent Processing", il existe des composants logiciels propres à
Oracle Applications.
Concurrent Manager
Composants système pour exécuter et surveiller des Tâches en arrière-plan.
Contrairement à d'autres solutions d'entreprise, plusieurs "Concurrent
Manager" peuvent être présents. Vous pouvez être responsable de diverses
applications et contrôler également la répartition des charges.
Concurrent Process
Instance unique d'un "Concurrent Program". Cela correspond à un processus
du système d'exploitation.
Concurrent Program
Définition de "Concurrent Process".
Comparable à la définition de Job. Cette définition contient le renvoi au
"Concurrent Program Executable" à exécuter, des définitions de paramètres et
de ce qu'on appelle incompatibilités. Les incompatibilités sont des conditions
pour l'exécution, par exemple "Le Concurrent Program A ne peut pas
s'exécuter simultanément au Concurrent Program B".
Concurrent Program
Executable
Le programme en lui-même.
Concurrent Request
Exigence auprès du "Concurrent Manager" d'exécuter un "Concurrent
Program".
Submit
Concurrent Request
Fonction qui crée une exigence pour l'exécution d'un "Concurrent Process".
Phase
Phase durant l'exécution d'un "Concurrent Process".
Le programme peut exister sous forme de fichier ou de procédure enregistrée.
Phases possibles : PENDING, RUNNING, COMPLETE, INACTIVE
Statut
Dans chaque phase d'un "Concurrent Process", certains statuts peuvent se
produire.
Exemple : les statuts de la phase PENDING sont NORMAL, SCHEDULED
ou STANDBY.
Automation Engine
227
7.8.2 Codes retour des Jobs OA
L'Agent journalise dans le rapport d'activation du Job toutes les erreurs qui se sont produites.
En outre, il définit en fonction de l'exécution du Job un des codes retour suivants :
Code
retour
Description
0
Aucune erreur n'est survenue.
4
La Concurrent Request s'est terminée avec Phase=COMPLETE et Status=WARNING.
10
Une erreur s'est produite lors de l'ajout de paramètres avec les fonctions OA_ADD_
PRINTER, OA_ADD_LAYOUT ou OA_ADD_NOTIFICATION.
100
Une commande JCL inconnue existe dans le script.
102
Une erreur s'est produite lors de l'exécution de l'instruction OA_SUBMIT_REQUEST.
1000
Une erreur OCI s'est produite.
Dans l'objet Job, vous pouvez décider dans l'onglet "Exécution" à partir de quel code retour le Job doit
être interrompu.
Rubriques connexes :
Généralités sur le JCL Oracle Applications
7.9 UC4 et OS/400
7.9.1 Agent - Interaction entre UC4 et OS/400
L'Agent OS/400 interagit avec le système UC4 via une interface TCP/IP.
L'Agent OS/400 dispose des fonctionnalités suivantes :
l
l
l
l
traitement de Jobs,
exécution de Transferts de Fichiers,
traitement d'Evènements,
CallAPI.
Traitement de Jobs
Dans UC4, les Jobs sont définis et gérés comme des objets à l'aide d'onglets. Le JCL (CMD, CL ou
REXX) se trouve dans l'onglet Script. Il peut être muni d'une logique complexe à l'aide de scripts d'UC4.
Rubriques connexes : Manuel Utilisateur – Job et Job – Exécution.
Un Job est démarré dans UC4 à l'aide de mécanismes de contrôle comme les Workflows ou les
Schedules, ou encore manuellement. Un Job exécutable est généré dans le UC4 Automation Engine et
transféré à l'Agent OS/400 par Transfert de Fichier.
Rubriques connexes : Interne UC4 – Exécution des objets
Le Job est lancé dans OS/400 par la commande SBMJOB dans laquelle le "shell de Job UC4" (programme
"IRSTRJOB" dans la bibliothèque fournie) est exécuté. Le shell de Job reçoit comme paramètre, entre
228
Chapter 7 UC4 et les systèmes cible
autres, le nom de Job généré par le UC4 Automation Engine ou le nom du membre de fichier sous lequel le
Job est enregistré. Selon le type de Job, il exécute les Tâches suivantes :
l
l
l
CMD
Le shell de Job exécute chaque ligne du membre de fichier. Si une erreur se déclare dans une ligne,
le code de gravité est défini comme code retour du Job et l'informateur de Job n'est appelé qu'à la
fin du Job.
ILE CL
Le shell de Job convertit le membre de fichier et crée ainsi un programme CL temporaire. Si la
conversion s'est bien terminée, le shell de Job exécute le programme CL.
REXX
Le shell de Job exécute l'interpréteur REXX et transmet le nom du membre de fichier que contient le
script REXX.
Chaque Job annonce à l'Agent (informateur de Job) le début et la fin de l'exécution, ce dernier passe à son
tour ces informations au UC4 Automation Engine. Le code retour du Job est disponible dans UC4.
L'Agent surveille à intervalles réguliers le statut du Job. Si un Job est perdu (par ABEND ou CANCEL), ce
mécanisme permet de constater la fin anormale. Le Job est alors considéré comme disparu dans le
système UC4.
Le statut des Jobs qui ont été exécutés est également déterminé lorsque l'Agent est inactif. Cela est
possible par l'affichage des informateurs de démarrage et de fin dans le rapport de Job qui est analysé par
l'Agent.
Attention: JCL est compilé en un programme sur OS/400 puis est exécuté. Cela peut ainsi provoquer une
interruption incontrôlée moyennant quoi le statut du Job ne peut être affiché correctement. Grâce à la
commande MONMSG, il est possible de reconnaître les interruptions de programmes et d'y réagir. Pour
l'utilisation de cette commande, le paramètre de Job "Type" - "ILE CL" est nécessaire.
Dans l'exemple suivant, l'exécution de JCL est surveillée par la commande MONMSG et définie en
fonction du statut du Job:
Onglet Pré-Script :
! Activer l'affichage des informateurs de démarrage et de fin pour la
restauration du statut
:SET &UC_QPRINT = 10
! La commande OS/400 CL surveille toutes les exceptions et passe au libellé
ERROR
MONMSG CPF0000 (GOTO ERROR)
Onglet Script :
! Commande que le Job doit être exécuté. Dans ce cas, tous les processus
actifs sont affichés.
wrkactjob *print
! Définir 0 comme valeur du code retour.
CHGVAR &RETCODE '0'
! Exécution de l'informateur de fin
GOTO END
! Lorsqu'une erreur se produit, le code retour est défini en fonction.
ERROR:
CHGVAR &RETCODE '99'
Le rapport de Job (spool), se composant du contenu du spool (selon la définition du Job, uniquement
QPJOBLOG ou le contenu entier), est écrit dans le fichier indiqué par le UC4 Automation Engine. Si cela
est défini dans le Job, l'Agent transfère le rapport à l'UC4 Automation Engine qui l'enregistre à son tour
dans la base de données UC4. Les spoolfiles peuvent être supprimés ou laissés dans le spool. Ceci peut
Automation Engine
229
être réglé à l'aide d'un paramètre global dans le fichier INI de l'Agent. Attention : ne démarrez pas le Job
avec une priorité de sortie qui sollicite immédiatement le spool.
Exécution de Transferts de Fichiers
Dans UC4, les Transferts de Fichiers sont définis et gérés comme des objets à l'aide d'onglets. Ils sont
exécutés avec la conversion de caractères qui y figure, par exemple "EBCDIC_00273". A l'heure actuelle,
seul le Library File System (QSYS.LIB) est pris en charge. Les noms de fichier doivent être indiqués sous
la forme
l
l
bibliothèque/objet ou
bibliothèque/objet (membre)
.
Rubriques connexes : Manuel de l'utilisateur – Transfert de Fichier
Traitement d'Evènements
Les Evènements sont définis et gérés comme des objets avec différents onglets dans UC4.
Des Evènements de système de fichiers se rapportant au Library File System (QSYS.LIB) peuvent être
définis. L'Agent OS/400 prend également en charge les Evènements de type "console".
Rubriques connexes : Manuel de l'Utilisateur – Evènement
CallAPI
CallAPI peut être utilisé avec un utilitaire pouvant par exemple être exécuté à partir d'un script CL.
Voir : Manuel de l'utilisateur - CallAPI
7.9.2 Agent OS/400 - Prise en charge du Transfert de
Fichier
Quelques particularités sont à prendre en compte lors de l'utilisation du Transfert de Fichier avec un
Agent OS/400.
Afin que le nouveau Protocole de Transfert de Fichier soit utilisé, les Agents OS/400 de la version 9.00A
ou supérieure doivent être démarrés comme étant compatibles avec un processus à plusieurs Threads.
Pour cela, il faut fixer le paramètre ALWMLTTHD dans le JOBD de l'Agent sur la valeur *YES.
IFS est désormais pris en charge dans le nouveau protocole de transfert de fichiers !
Le nouveau Transfert de Fichier est exécuté sous la forme de Threads ; A cet effet, seuls les systèmes
de fichiers suivants peuvent être utilisés :
l
l
l
l
l
l
l
"Root" (/)
QOpenSys
User-defined
QNTC
QSYS.LIB
Independent ASP QSYS.LIB
QOPT
230
Chapter 7 UC4 et les systèmes cible
l
l
Network File System
QFileSvr.400
Concerne le nouveau protocole de Transfert de fichier :
les commandes du système d'exploitation CRTPF et ADDPFM sont utilisées pour le transfert de fichiers.
Les paramètres de CRTPF peuvent ainsi être indiqués directement avec les attributs dans le Transfert de
Fichier.
La commande CRTPF est utilisée lorsqu'un nouveau fichier doit être créé. Le paramètre ADDPFM est
exécuté lorsque le fichier existe déjà et qu'un seul membre doit être rajouté.
Lorsqu'une erreur survient lors du Transfert de Fichier et que sa signification n'est pas claire du point de
vue d'UC4 (par exemple : "CPF0001 - Error found on ADDPFM command"), il s'agit éventuellement d'une
erreur liée à l'exécution de ces commandes. Dans ce cas, vous trouverez plus d'informations dans le log
de Job enregistré directement sur le système d'exploitation.
Indication de fichiers :
Système de fichiers QSYS
La syntaxe pour le Transfert d'un fichier QSYS est :
Nom de la bibliothèque/nom du fichier(nom du membre)
Lorsque vous spécifiez le nom de fichier ou de membre, vous pouvez également utiliser les caractères
génériques * et ?.
* - caractère de remplacement pour un nombre quelconque de caractères (également aucun), ? exactement un caractère quelconque
Si vous utilisez des caractères génériques dans le nom de fichier, aucun nom de membre ne doit être
spécifié !
Vous trouverez des indications détaillées concernant les caractères génériques dans le chapitre Les
Transferts de Fichiers avec caractères génériques.
Exemples :
Transfert de tous les membres du fichier TEST.
UC4/TEST(*)
ou
UC4/TEST()
Transfert de tous les membres du fichier TEST dont le nom commence par la lettre "A".
UC4/TEST(A*)
Transfert de tous les membres du fichier TEST dont le nom comporte 3 caractères et qui commence par la
lettre "A" et se termine par la lettre "B".
UC4/TEST(A?B)
Transfert du membre ABC du fichier TEST.
UC4/TEST(ABC)
Transfert de tous les fichiers dont le nom commence par TEST.
UC4/TEST*
Système de fichiers IFS
Automation Engine
231
Pour IFS (Integrated Filesystem), il s'agit d'un système de fichiers UNIX. Les fichiers IFS doivent toujours
être indiqués avec le chemin absolu (à partir de la racine) et les noms de fichiers consécutifs.
Si l'entrée du fichier contient le caractère /, alors l'Agent accepte qu'il s'agisse d'un fichier IFS.
Exemple :
/home/uc4/test.txt
Afin d'exécuter des Transferts de Fichiers avec caractères génériques, les caractères génériques * et ?
sont disponibles. Ils peuvent être utilisés indifféremment au sein du chemin d'accès et/ou du nom du
ficher.
Pour un Transfert de Fichier individuel, la casse du chemin d'accès et du nom du fichier n'ont par
d'importance. Les 2 entrées suivantes sont donc identiques :
/home/AbC.txt
/HOME/ABC.txt
Pour les Transferts de fichiers avec des caractères génériques, il faut veiller à la taille de la police ! Les 2
entrées suivantes sont donc différentes :
/home/AB*
/home/ab*
Attributs
Tous les attributs pris en charge par OS/400 peuvent être indiqués indépendamment du système de
fichiers pour la cible du Transfert de Fichier. Si vous indiquez plusieurs attributs, vous devez les séparer
par des virgules. Des données qui ne seraient pas valides sont ignorées.
Système de fichiers QSYS
L'Agent OS/400 peut transmettre des fichiers de type *FILE et SAVF. D'autres types de fichier comme
*PGM, *RPG, *CLLE doivent être recueillis dans des fichiers SAVF avant leur transfert. Les points
suivants doivent être respectés lors d'un Transfert de Fichier SAVF :
l
l
Définissez l'attribut reclen=528 dans l'objet Transfert de Fichier du fichier source.
Sélectionnez la page de code UC_CODE pour le fichier source comme pour le fichier cible.
Pour tous les autres fichiers :
l
l
Si le fichier cible n'est pas disponible, il est créé. Pour ce faire, on utilise la commande CRTPF.
Pour les attributs qui peuvent être indiqués pour la cible dans un Transfert de Fichier, il s'agit donc
du paramètre de cette commande.
Si aucun attribut n'est spécifié, le fichier est alors stocké par défaut avec une longueur
d'enregistrement de 80 octets. Pour les Transferts de Fichiers avec caractères génériques
MAXMBRS(*NOMAX) est défini par défaut (le fichier ne comprend ainsi aucune limite de membre).
Pour un Transfert de Fichier individuel, la valeur par défaut du système est utilisée pour
MAXMBRS.
Si un fichier cible existe déjà, leurs attributs peuvent alors être uniquement réécrits, lorsque l'option
"Conserver les attributs originaux de fichier" est définie dans l'objet Transferts de Fichiers. C'est à
cela que sert la commande CHGPF, dont le paramètre peut être défini comme Attributs cible dans
l'objet Transfert de Fichier.
Grâce à l'option "Conserver les attributs originaux de fichier" de l'objet Transfert de Fichier, les attributs de
fichiers de la source sont pris pour les fichiers cible. Cela n'est cependant possible que lorsque l'Agent
232
Chapter 7 UC4 et les systèmes cible
source et l'Agent cible indiquent le même système d'exploitation (dans ce cas OS/400) et UC4 Version
9.00A (ou supérieure). Sinon, ce paramètre est ignoré.
Ainsi les attributs de fichier suivants peuvent être conservés :
l
l
l
l
l
l
l
l
l
l
l
l
l
l
l
ACCPTHSIZ - Taille du chemin d'accès
ALWUPD - Autorise la mise à jour (ALWUPD). Si l'option est activée, les enregistrements ne sont
pas autorisés à être mis à jour dans le fichier (*NO).
ALWDLT - Autorise la suppression (ALWDLT). Si l'option est activée, les enregistrements ne sont
pas autorisés à être supprimé du fichier (*NO).
CCSID - ID de jeu de caractères codés
EXPDATE - Date d'expiration pour les membres
FRCACCPTH - Chemin d'accès forcé
FRCRATIO - Enregistrements pour forcer l'écriture
LANGID - Langage ID
MAINT - Maintenance du chemin d'accès
MAXMBRS - Membres maximum
PAGESIZE - Taille de la page logique du chemin d'accès
RCDLEN - Taille de l'enregistrement, si aucun DDS, DDS contient le format d'enregistrement
complet (Clefs, Champs, Relations, etc.)
SHARE - Partager le chemin d'accès de données ouvertes
SIZE - Taille du membre, nombre initial d'enregistrements, augmentation du nombre
d'enregistrements, augmentations maximum
TEXT - 'description' du texte
De plus, il est possible d'utiliser le paramètre spécial TRIM=YES dans le champ "Attributs" de la source
de Transfert de Fichier. Cette option n'est pas un véritable attribut de fichier mais une fonction spéciale
d'UC4. Elle a pour effet de supprimer automatiquement les espaces au début et à la fin de chaque ligne
des fichiers à transférer. Cette option ne peut pas être définie en relation avec le système de fichier IFS.
Système de fichiers IFS
Pour les fichiers IFS, les 2 attributs suivants peuvent être indiqués ou conservés :
l
l
ccsid - Le CCSID utilisé pour les données dans le fichier ou les attributs étendus du répertoire
codepage - La page de code est dérivée du CCSID utilisé pour les données dans le fichier ou les
attributs étendus du répertoire.
Rubriques connexes :
Onglet Transfert de Fichier
7.10 UC4 et PeopleSoft
7.10.1 Test de la connexion PeopleSoft
Le programme pscitester peut être utilisé pour tester la connexion au serveur d'applications
PeopleTools. Il s'agit d'un programme d'exemple de PeopleSoft fourni comme source Java. Il se trouve
sous %PS_HOME%/sdk/PSCOMPINTFC/src/java/samples. Cet exemple permet de tester si l'accès
à PeopleSoft est possible via Java Object Adapter.
Le déroulement suivant décrit le développement et le test du programme d'exemple.
Automation Engine
233
Déroulement
1.
l
l
Hôte
Installez le SDK Java sur un poste de travail. Ce dernier ne doit pas forcément être le Serveur
PeopleSoft.
2.
l
Adaptation des Variables PATH
Ajoutez le répertoire bin &lt;SDK_HOME&gt;\bin à la Variable d'environnement PATH. Pour tester
si l'installation s'est bien terminée, vous pouvez saisir "javac" dans la ligne de commande MS-DOS
ou dans le terminal. Une sortie de javac s'affiche alors.
3.
l
l
Création des sources Java
Sélectionnez un Component interface dans Application Designer et cliquez sur Build -> PeopleSoft
APIs. Les classes Java à constituer peuvent alors être sélectionnées :
CompIntfc.USER_PROFILE
CompIntfc.USER_PROFILE_IDTypes
CompIntfc.USER_PROFILE_IDTypesCollection
CompIntfc.USER_PROFILE_Roles
CompIntfc.USER_PROFILE_RolesCollection
CompIntfc.USER_PROFILE_Roles_RouteControls
CompIntfc.USER_PROFILE_Roles_RouteControlsCollection
CompIntfc.USER_PROFILE_Attributes
CompIntfc.USER_PROFILE_AttributesCollection
CompIntfc.USER_PROFILE_SYNC
CompIntfc.USER_PROFILE_SYNCCollection
CompIntfc.USER_PROFILE_Collection
CompIntfc.CompIntfcPropertyInfo
CompIntfc.CompIntfcPropertyInfoCollection
Désactivez la case à cocher pour la génération de la bibliothèque de types COM et sélectionnez
dans le champ Java Classes un dossier dans lequel les fichiers doivent être générés. Les fichiers
Java sont générés dans le répertoire indiqué sous PeopleSoft/Generated/CompIntfc.
4.
l
Installation du SDK Java
Développement des fichiers *.class
Créez un dossier dans lequel vous copierez ensuite le fichier psjoa.jar, le répertoire pscitester et le
répertoire PeopleSoft. Ce dernier a été spécifié lors de la génération des classes Java. La structure
du répertoire ressemble maintenant à ça :
./psjoa.jar
./pscitester/pscitester.java
./PeopleSoft/Generated/CompIntfc/CompIntfcPropertyInfo.java
./PeopleSoft/Generated/CompIntfc/CompIntfcPropertyInfoCollection.java
./PeopleSoft/Generated/CompIntfc/ICompIntfcPropertyInfo.java
./PeopleSoft/Generated/CompIntfc/ICompIntfcPropertyInfoCollection.java
./PeopleSoft/Generated/CompIntfc/IUserProfile.java
./PeopleSoft/Generated/CompIntfc/IUserProfileIdtypes.java
./PeopleSoft/Generated/CompIntfc/IUserProfileIdtypesAttributes.java
234
Chapter 7 UC4 et les systèmes cible
l
l
./PeopleSoft/Generated/CompIntfc/IUserProfileIdtypesAttributesCollection.java
./PeopleSoft/Generated/CompIntfc/IUserProfileIdtypesCollection.java
./PeopleSoft/Generated/CompIntfc/IUserProfileRoles.java
./PeopleSoft/Generated/CompIntfc/IUserProfileRolesCollection.java
./PeopleSoft/Generated/CompIntfc/UserProfile.java
./PeopleSoft/Generated/CompIntfc/UserProfileIdtypes.java
./PeopleSoft/Generated/CompIntfc/UserProfileIdtypesAttributes.java
./PeopleSoft/Generated/CompIntfc/UserProfileIdtypesAttributesCollection.java
./PeopleSoft/Generated/CompIntfc/UserProfileIdtypesCollection.java
./PeopleSoft/Generated/CompIntfc/UserProfileRoles.java
./PeopleSoft/Generated/CompIntfc/UserProfileRolesCollection.java
./PeopleSoft/Generated/CompIntfc/IUserProfileRolesRoutecontrols.java
./PeopleSoft/Generated/CompIntfc/IUserProfileRolesRoutecontrolsCollection.java
./PeopleSoft/Generated/CompIntfc/UserProfileRolesRoutecontrols.java
./PeopleSoft/Generated/CompIntfc/UserProfileRolesRoutecontrolsCollection.java
./PeopleSoft/Generated/CompIntfc/IUserProfileCollection.java
./PeopleSoft/Generated/CompIntfc/UserProfileCollection.java
./PeopleSoft/Generated/CompIntfc/UserProfileSync.java
./PeopleSoft/Generated/CompIntfc/UserProfileSyncCollection.java
Utilisez la ligne de commande MS-DOS ou le terminal pour passer à ce répertoire. Il faut
maintenant encore définir le CLASSPATH :
Pour Windows : set CLASSPATH=.;psjoa.jar
Pour Unix : export CLASSPATH=psjoa.jar:.
Traduisez l'exemple à l'aide de :
javac pscitester/pscitester.java
5.
l
l
l
Démarrage du programme pscitester
Prérequis : le serveur d'applications auquel le programme doit se connecter doit être en cours
d'exécution.
Dans le programme de test, il faut saisir le port JOLT. Vous trouverez celui-ci dans le fichier %PS_
HOME%\APPSERV\<APPSERVERNAME>\psappsrv.cfg sous [JOLT Listener].
Démarrez le programme :
java pscitester.pscitester
Le message d'erreur suivant peut être ignoré :
java.lang.NullPointerException: PSProperties not loaded from file.
Pour éviter l'affichage de ce message, le fichier pstools.properties doit être copié de PeopleSoft
dans le répertoire actuel.
l
Si toutes les saisies étaient correctes, le message suivant s'affiche :
Application Server Connect Information...
Enter The Application Server Name: wgw2ksps2
Enter The Application Server Port Number[ 9000]:
Enter PeopleSoft UserID [PTDMO]: PS
Enter PeopleSoft UserID Password: [PTDMO]: ********
Connected to Appserver...
Get on Component Interface "USER_PROFILE" succeeded
Listing Component Interface property for field "UserID"
Long Label: User ID
Automation Engine
235
Short Label: User
Is Collection: false
Type: 0
Format : 6
Is Key: true
Is Required: false
Is Xlat: false
Is YesNo: false
Is Prompt: false
7.10.2 Utilisation de Variables de liaison
Les processus PeopleSoft peuvent contenir des Variables appelées Variables de liaison. UC4 vous
permet de planifier ces processus et d'attribuer des valeurs
. Les deux fonctions PS_SET_BINDVAR et PS_RUN_PROCESS interagissent et peuvent être utilisées
comme suit.
l
l
PS_SET_BINDVAR remplace une valeur que vous spécifiez vous-même dans le Script UC4 ou
que vous obtenez à l'aide d'un Run Control ID.
Vous pouvez ensuite exécuter la fonction PS_RUN_PROCESS qui démarre un processus et le
surveille. Les valeurs des Variables de liaison sont prises en compte ici.
Pour pouvoir utiliser cette fonctionnalité, la base de données PeopleTools doit être configurée. Chacune
des étapes est expliquée dans le chapitre sur l'installation.
Testez bien les Jobs qui remplacent les valeurs des Variables de liaison avant de les mettre en service
dans le système de production. Les valeurs ont un format particulier (par ex. date) devant être conservé.
Etant donné que chaque syntaxe est différente et qu'elle n'est donc pas vérifiable, il est impérativement
recommandé de procéder à des tests exhaustifs !
7.10.3 Modifications apportées aux contrôles d'exécution
La plupart des processus nécessitent la saisie de paramètres pour l'exécution, par exemple une période.
Ce genre d'informations peut être enregistré à une seule reprise dans de soi-disant contrôles d'exécution
(RUN_CONTROL_RECORDS) . Les processus obtiennent les paramètres pour l'exécution à partir du
contrôle d'exécution attribué.
Un contrôle d'exécution est, en règle générale, exactement un enregistrement de la base de données
PeopleSoft. Il peut également englober plusieurs enregistrements. Un contrôle d'exécution est identifié de
manière unique à l'aide des concepts clés OPRID (ID utilisateur) et RUN_CNTRL_ID.
Application
UC4 met à disposition la fonction PS_MODIFY_RUNCONTROL qui vous permet de modifier les
contrôles d'exécution. L'adaptation se rapporte alors à un seul enregistrement. Si plusieurs
enregistrements d'un contrôle d'exécution doivent être maintenus, vous devez procéder à une exécution
distincte de PS_MODIFY_RUNCONTROL pour chaque modification. Cette procédure différencie UC4 de
la maintenance en ligne dans PeopleSoft.
236
Chapter 7 UC4 et les systèmes cible
Exemples
Exemple 1
Un Utilisateur souhaite exécuter le rapport SQR "Employee Turnover Analysis". Pour ce faire, il crée un
contrôle d'exécution "myRunControl". Après avoir rajouté le contrôle d'exécution, les champs de
paramètre nécessaires pour le rapport sont renseignés et enregistrés. Il s'agit ici des champs FROM_
DATE et THRU_DATE.
La même modification peut être effectuée de manière automatique par UC4. Cet ID utilisateur est
déterminé par l'objet Login du Job PeopleSoft.
PS_MODIFY_RUNCONTROL RUNCONTROLID='myRunControl',RECORDNAME='RUN_CNTL_
HR',FIELDNAME='FROM_DATE',FIELDVALUE='20050306'
PS_MODIFY_RUNCONTROL RUNCONTROLID='myRunControl',RECORDNAME='RUN_CNTL_
HR',FIELDNAME='THRU_DATE',FIELDVALUE='20060306'
Exemple 2
L'exemple suivant présente la modification d'un contrôle d'exécution pour la conversion monétaire. Cette
fois-ci, il y a non seulement des champs, mais aussi des valeurs sous forme de liste. Il s'agit d'une liste de
monnaies.
Pour pouvoir modifier les valeurs monétaires, un code doit être transmis lors de l'exécution de PS_
MODIFY_RUNCONTROL.
Automation Engine
237
PS_MODIFY_RUNCONTROL RUNCONTROLID='myRunControl',RECORDNAME='RUN_CNTL_CC2_
EO',FIELDNAME='RATE_MULT',FIELDVALUE='100',KEYNAME(1)='CURRENCY_
CD',KEYVALUE(1)='EUR'
Les données de la liste de monnaies sont au niveau 1. C'est pourquoi il faut saisir le chiffre 1 pour les
paramètres KEYNAME(1)= et KEYVALUE(1)=.
Risques et limitations
Lors de la modification des contrôles d'exécution, tenez comptes des remarques suivantes :
l
l
l
l
l
Les valeurs transmises ne sont vérifiées que de façon rudimentaire. Ce qui veut dire que des
valeurs erronées peuvent se retrouver dans la base de données PeopleSoft et qu'ensuite un ou
plusieurs composants en ligne ne peuvent plus fonctionner ! Cette erreur n'est réparable, dans la
plupart des cas, qu'avec des commandes SQL.
Aucune incohérence du modèle de données ne peut en résulter ; néanmoins, des valeurs ne
pouvant être traitées en ligne peuvent se retrouver dans la base de données. Par exemple,
PeopleCode interdit la saisie d'une date courante de l'année précédente. Avec la fonction PS_
MODIFY_RUNCONTROL, une telle saisie est cependant possible.
PS_MODIFY_RUNCONTROL ne crée aucun nouveau contrôle d'exécution, étant donné que les
champs de la table de base de données correspondante peuvent éventuellement être renseignés
par PeopleCode et qu'ils peuvent être dépendants les uns des autres. Ni UC4, ni l'interface
PeopleCode pour UC4 ne connaissent ces dépendances.
Les dépendances entre les champs d'un contrôle d'exécution ne sont en principe pas prises en
compte et elles peuvent également générer des erreurs dans l'application PeopleSoft.
Le contrôle d'exécution est également capable d'écrire plus d'un enregistrement. Par exemple, le
composant RUN_CNTL_CC_EO (Currency Conversion) écrit au moins dans les tables PS_RUN_
CNTL_CC1_EO et PS_RUN_CNTL_CC2_EO. L'Utilisateur est seul responsable de renseigner
les noms qui conviennent dans les enregistrements.
Rubriques connexes :
PS_MODIFY_RUNCONTROL
7.11 UC4 et SAP
7.11.1 Solutions SAP et Job Scheduling avec UC4
Lorsque vous utilisez des solutions SAP et qu'il vous faut un Job Scheduling efficace, la plate-forme UC4
Automation est une solution idéale. Il permet une intégration rapide et transparente de toutes les
applications SAP dans le contrôle de processus d'entreprise. La plate-forme UC4 Automation prend en
charge toutes les applications SAP, y compris SAP R/3, mySAP Business Suite et SAP NetWeaver ainsi
que les solutions sectorielles, se basant sur ces applications, pour les télécommunications,
l'approvisionnement, la banque, etc. Résultat : les processus informatiques dans diverses applications
SAP sont gérés et surveillés centralement et sont en phase avec le reste de votre exploitation informatique
mondiale.
238
Chapter 7 UC4 et les systèmes cible
Développé comme un planificateur d'entreprise, UC4 ne nécessite aucun composant intergiciel, tel qu'un
serveur d'applications JAVA, et il permet une fonctionnalité de planification très poussée sur l'ensemble de
l'infrastructure informatique. Le système est directement lié à SAP NetWeaver et accélère ainsi la création
et la maintenance de Jobs pour les applications SAP. Les rapports, variantes et tous les autres
paramètres nécessaires sont disponibles au travers de l'interface graphique intuitive et conviviale de la
plate-forme UC4 Automation. Les problèmes relatifs aux accès manuels, aux erreurs de saisie ou aux
listes de paramètres obsolètes sont éliminés de manière efficace. Il est facile de créer les Jobs avec la
fonctionnalité de glisser-déposer, de plus, ceux-ci sont affichés graphiquement à l'écran. Cela assure une
excellente visibilité et simplifie la gestion et le contrôle.
Grâce à une automatisation complète de tous les processus informatiques, la plate-forme UC4
Automation augmente la productivité au niveau de l'utilisation des solutions d'entreprise de SAP. Les Jobs
d'arrière-plan et les processus des applications SAP sont surveillés centralement et automatisés. La plateforme UC4 Automation assure une meilleure performance grâce à un traitement d'arrière-plan optimisé et à
un nombre réduit d'interruptions et d'erreurs du système.
Rubriques connexes :
UC4 Automation Platform et SAP NetWeaver
7.11.2 SAP NetWeaver
UC4 Automation Platform et SAP NetWeaver
Cette documentation suit l'architecture SAP NetWeaver et explique les fonctions UC4 en fonction de
cette dernière. De plus, y sont expliquées les fonctions pour les solutions sectorielles ainsi que les
solutions personnalisées.
Intégration à People
Ce domaine de SAP NetWeaver sert à l'intégration d'Utilisateurs finaux. UC4 crée des interfaces
spécifiques aux rôles et rend ainsi le département concerné responsable du démarrage des processus
Automation Engine
239
avec les paramètres qui conviennent. Cela permet de désactiver les sources d'erreur potentielles et UC4
exécute les processus prédéfinis en Tâche d'arrière-plan, sans souci d'erreur.
Fonctionnalités d'UC4
Intégration dans SAP Enterprise Portal (iViews)
Interface Web
Business Intelligence
Le point central de cette couche est la gestion de l'entreposage. Les processus de chargement des
données et les chaînes de processus sont contrôlés par UC4 et, avec des processus supérieurs, ils sont
également intégrés à d'autres plateformes. L'analyse et la représentation automatiques des processus
individuels d'une chaîne, jusqu'au niveau le plus bas, vont ainsi de soi.
Fonctionnalités d'UC4
Planification des processus de chargement des données
Planification des chaînes de processus
Planification de requêtes dans le batch
Intégration des processus
Cette partie traite l'intégration des processus métier à SAP Exchange Infrastructure (SAP XI). En tant
qu'Integration Broker, les messages peuvent être validés directement dans UC4 via les processus à
adaptateur standard SAP XI et inversement.
Fonctionnalités d'UC4
Surveillance des canaux de communication SAP XI
Plateforme d'application
La plateforme d'application forme la base de toutes les applications SAP. UC4 utilise l'ABAP ainsi que le
domaine Java pour mettre à votre disposition des fonctionnalités utiles.
Fonctionnalités d'UC4
ABAP :
Exécution de Jobs dans la pile ABAP (CCMS)
Processus enfants
Jobs interceptés
Analyse du code retour d'application des steps SAP
Gestion des variantes
Gestion de BDC
Gestion de Spool
Gestion d'Evènements
240
Chapter 7 UC4 et les systèmes cible
Reprise de Jobs SAP
Reprise des définitions de calendrier SAP
JAVA :
Agent Java EE/JMX pour SAP NetWeaver
JMX dans SAP NetWeaver
Exécution de Jobs dans la pile Java (JXBP)
Gestion du cycle de vie
Cette partie comprend le contrôle et la surveillance de toutes les solutions utilisées sur la base de la
technologie SAP NetWeaver. UC4 a accès à toutes les données de surveillance d'un côté et, d'un autre
côté, y fournit ses propres données.
Fonctionnalités d'UC4
Surveillance des moniteurs
Surveillance des Evènements SAP
Intégration de UC4 à SAP Solution Manager
Inscription dans le système Landscape Directory
Analyse du log système et du log application
Commutation des modes de fonctionnement
Développement d'applications
UC4 vous soutient pour le développement d'applications avec une kyrielle de possibilités.
Fonctionnalités d'UC4
ABAB :
CallAPI pour SAP
JAVA :
Interface d'application UC4
Intégration à People
Intégration dans SAP Enterprise Portal (iViews)
Introduction
Les UC4 iViews pour Job Scheduling apportent des informations actuelles sur le fonctionnement de Job
Scheduling dans les composants SAP Enterprise Portal de SAP NetWeaver et permettent aux
utilisateurs finaux de démarrer des processus commerciaux critiques.
Automation Engine
241
Les Tâches peuvent être démarrées et surveillées directement à partir de SAP Enterprise Portal.
L'utilisateur final peut démarrer des processus importants, même sans connaissance de Job Scheduling.
Lorsque cela est nécessaire, les paramètres correspondants peuvent être définis. Chaque utilisateur peut
surveiller le statut actuel du traitement en arrière-plan via SAP Enterprise Portal. Les processus démarrés
à cet emplacement sont contrôlés et surveillés par la plate-forme UC4 Automation. L'état actuel est mis à
disposition de l'Utilisateur via la technologie iView.
Rubriques connexes :
Démarrage de Tâches
Surveillance des activités
Démarrage de Tâches
L'"ActivateObject" de iView permet aux utilisateurs de démarrer les objets activables dans UC4. Pour
cela, enregistrez le nom de l'objet et une description explicative dans les propriétés de personnalisation.
Il est important de définir l'alias du système. Il doit correspondre à la désignation que l'administrateur a
définie dans les paramètres système.
Vous pouvez avec les alias de système accéder à différents systèmes UC4.
Le bouton "Start" permet désormais d'activer l'objet. iView affiche le numéro courant (RunID) de
l'exécution actuelle ou de la dernière. D'autres informations sont à votre disposition en utilisant le lien
"Détail" qui ouvre la fenêtre de détails. De même que dans l'Interface Utilisateur, vous y trouverez des
renseignements sur l'heure de début ou le code retour.
Si l'exécution de l'objet requiert une saisie utilisateur car l'instruction de Script :READ a été utilisée, un
masque de saisie correspondant est créé dans iView. Les astérisques "*" rouges symbolisent les champs
obligatoires.
242
Chapter 7 UC4 et les systèmes cible
Rubriques connexes :
Surveillance des activités
Surveillance des activités
Les "Activities" de iView affiche les activités du système UC4 qui ont été démarrées sous l'Utilisateur.
De même que dans l'Interface Utilisateur, vous y trouverez des renseignements sur la priorité, l'heure
de début ou le statut des Tâches, par exemple.
Les informations sur les activités peuvent uniquement être consultées. iView ne permet pas d'effectuer
des modifications du type interruption ou traitement de la Tâche.
Il est possible de fusionner certaines colonnes et ainsi d'adapter l'affichage à vos besoins. Utilisez pour
cela la configuration personnalisée. Il est important de définir l'alias du système. Il doit correspondre à la
désignation que l'administrateur a définie dans les paramètres système.
Automation Engine
243
Rubriques connexes :
Démarrage de Tâches
Intégration d'informations
Planification des processus de chargement des données
Un info package est un objet qui décrit dans BW les conditions de sélection pour la demande de
données d'un système source. Cet objet peut être planifié et contrôle ainsi un processus de chargement
des données à partir d'un système source. Un info package peut être contrôlé de l'extérieur à partir d'une
interface standard. Cette interface est utilisée en conséquence par UC4.
UC4-JCL pour SAP
Elément de script
Description
BW_ACTIVATE_
INFOPACKAGE
Planifie un ou plusieurs Info Packages pour un démarrage immédiat.
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_SET_
INFOPACKAGE_
SELECTION
Définit les paramètres de sélection utilisés pour la lecture des Info Packages à
partir du système BW.
244
Chapter 7 UC4 et les systèmes cible
Planification des chaînes de processus
Dans votre système BW, vous pouvez représenter des déroulements par des chaînes de processus.
Une telle chaîne se compose d'un processus de démarrage, de processus d'application individuels et de
processus collectifs. Il est également possible d'associer des info packages.
Avec UC4, il vous est possible de démarrer et de surveiller des chaînes de processus. Vous pouvez voir
chacun des processus dans la Fenêtre d'Activités de l'Interface Utilisateur. Les protocoles des processus
sont, en outre, enregistrés dans UC4 dans le rapport de l'objet Job.
UC4-JCL pour SAP
Elément de
script
Description
BW_
ACTIVATE_
CHAIN
Démarre une chaîne de processus, surveille l'exécution et enregistre ses protocoles
dans le rapport d'activation.
Automation Engine
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_
RESTART_
CHAIN
Continue une chaîne de processus interrompue.
245
Planification de requêtes dans le batch
A l'aide de la transaction RSCRM_BAPI, vous pouvez créer des interrogations dans votre système BW
avec de soi-disant requêtes. Le résultat est soit stocké dans une table, soit dans un fichier. Utilisez
UC4 pour exécuter les requêtes à intervalles réguliers ou selon les besoins.
Identifiez-vous, tout d'abord, dans le système BW et exécutez la transaction RSCRM_BAPI. Planifiez la
requête que vous voulez automatiser avec UC4. Chaque requête possède son propre ID batch. Ouvrez le
moniteur de batch et copiez ce numéro.
Créez maintenant un Job SAP dans le système UC4. Utilisez l'onglet Forme ou écrivez directement dans
l'onglet Script la fonction suivante :
R3_ACTIVATE_REPORT REP='RSCRMREPORT_BAPI'
Passez ensuite à l'onglet "SAP" et entrez l'ID batch copié précédemment dans le champ "Jobname".
246
Chapter 7 UC4 et les systèmes cible
Il est possible d'intégrer l'objet Job dans votre traitement, par exemple dans un objet Schedule, et il
exécute la requête aux moments définis par vos soins.
En raison du comportement de SAP, vous ne voyez pas toutes les exécutions dans le moniteur de
batch, mais uniquement la dernière.
Intégration des processus
Surveillance des canaux de communication SAP XI
Les adaptateurs SAP XI servent à échanger des données avec SAP Exchange Infrastructure. Ils
transforment les messages de manière à ce qu'ils puissent être transmis via les canaux de
communication.
L'Agent SAP met à votre disposition des fonctions vous permettant de contrôler des canaux de
communication :
l
l
l
démarrage des canaux de communication
arrêt des canaux de communication
demande d'informations concernant les canaux de communication
Automation Engine
247
Utilisez dans le Job SAP les fonctions XI_GET_CHANNEL et XI_SET_CHANNEL. Les informations sur
les canaux de communication sont enregistrées sous forme de document XML dans le rapport de Job. Les
Scripts pour XML préparent les données.
De plus, vous pouvez surveiller les canaux de communication à l'aide des objets Evènements de type
"Console". A chaque changement de statut, un Evènement est déclenché.
Activez l'interface XI du fichier INI de l'Agent SAP avec les paramètres de la section [SAP_XI].
Pour l'accès au système XI, un objet Login avec des données d'identification valides est nécessaire.
L'Utilisateur XI doit disposer des autorisations pour contrôler les canaux de communication XI. Utilisez
différents objets Login pour les systèmes SAP et XI lorsque les deux sont installés sur le même hôte.
Sinon le Login n'est pas sans ambiguïté.
UC4-JCL pour XI
Elément de script
Description
XI_GET_CHANNEL
Enumère les canaux de communication.
XI_SET_CHANNEL
Démarre et arrête les canaux de communication.
Plateforme d'application
ABAP
Gestion des Jobs
248
Chapter 7 Exécution de Jobs dans la pile ABAP (CCMS)
7 Exécution de Jobs dans la pile ABAP
(CCMS)
UC4 vous offre, avec ses fonctionnalités, de nombreuses possibilités pour l'exécution de votre
traitement dans SAP. A la base se trouve l'objet Job à l'aide duquel vous définissez les instructions
devant être exécutées dans le système SAP.
L'onglet Forme représente une interface graphique qui entretient une liaison au système SAP. La définition
des instructions de traitement est ainsi simple et rapide, car vous pouvez sélectionner directement des
données comme les variantes.
UC4 permet l'exécution de :
l
l
l
l
l
l
Jobs,
rapports ,
commandes externes ;
programmes externes,
Jobs interceptés,
et bien d'autres.
Dans la Fenêtre d'Activités de l'Interface Utilisateur, vous voyez le statut de la Tâche et vous pouvez la
redémarrer ou l'interrompre selon vos besoins. Les processus enfants sont également représentés. Une
fois la Tâche terminée dans UC4, vous pouvez afficher le rapport qui contient également les messages du
système SAP.
Mais l'objet Job n'est pas le seul à pouvoir exécuter des traitements dans le système SAP. Le type d'objet
"RemoteTaskManager" possède la fonctionnalité permettant de surveiller des Jobs dans SAP, mais aussi
de les démarrer. Vous pouvez l'utiliser pour des Jobs ou en particulier pour des Jobs interceptés.
Automation Engine
UC4-JCL pour SAP
Elément de script
Description
R3_ACTIVATE_EXT_
COMMAND
Exécute une commande externe.
R3_ACTIVATE_EXT_
PROGRAM
Exécute un programme externe.
R3_ACTIVATE_
INTERCEPTED_JOBS
Exécute des Jobs interceptés sous le contrôle d'UC4.
R3_ACTIVATE_JOBS
Exécute des Jobs déjà planifiés dans SAP sous le contrôle d'UC4.
R3_ACTIVATE_REPORT
Exécute le rapport indiqué.
R3_GET_JOBS
Sélectionne des Jobs SAP et affiche le résultat dans le rapport
d'activation ou dans un fichier.
R3_MODIFY_JOB
Modifie un step ABAP.
R3_SCHEDULE_JOB_
CANCEL
Réattribue le statut "Planifié" à un Job SAP déjà lancé.
Rubriques connexes :
Processus enfant
Jobs interceptés
RemoteTaskManager
249
250
Chapter 7 Processus enfants
7 Processus enfants
Les Jobs SAP peuvent être composés d'un seul ou de plusieurs sous-Jobs (par ex. : pour les chaînes
de processus). UC4 peut représenter ce qu'on appelle les processus fils. Ils sont affichés dans la
Fenêtre d'Activités et possèdent des enregistrements statistiques propres ainsi que des rapports.
Activez la fonctionnalité Parent-enfant dans la transaction SE38 au moyen du programme INITXBP2.
Le type d'objet des processus fils s'appelle JOBD.
Pour qu'une réplication des processus fils puisse avoir lieu dans le système UC4, il faut définir le
paramètre REPLICATE=YES pour le Script approprié.
Attention : les processus fils peuvent, à leur tour, posséder des processus fils. Ces cas-là sont
reconnaissables à la colonne "Parent" de la Fenêtre d'Activités et dans les statistiques.
L'illustration suivante montre l'exécution d'une chaîne de processus dans laquelle c'est le cas :
Dans la fenêtre de détails, le point "Texte du Statut" contient le numéro d'instance du système SAP.
La désactivation des processus fils est contrôlée à partir du processus parent.
Les Jobs SAP possèdent un onglet spécial nommé "Post-Traitement Lié". L'exécution a lieu dès qu'un
processus fils individuel se termine. Une analyse du résultat peut alors être effectuée immédiatement
après la fin d'un processus fils.
Pour chaque processus fils, un enregistrement statistique et un rapport sont créés. Affichez-les tous deux
à partir des statistiques du processus parent.
Automation Engine
251
Le rapport est structuré comme celui du processus parent le plus élevé ; il ne contient cependant que les
contenus de l'étape du processus en question.
Les paramètres du rapport de Job sont également repris par le processus parent (base de données, fichier,
uniquement en cas d'erreur). En outre, vous pouvez déterminer la taille du rapport avec les paramètres
JOBLOG=, PROCESSLOG= et LONGTEXT= dans les Scripts BW_ACTIVATE_CHAIN et BW_
RESTART_CHAIN.
UC4-JCL pour SAP
Elément de script
Description
BW_ACTIVATE_CHAIN
Démarre une chaîne de processus.
BW_RESTART_CHAIN
Continue une chaîne de processus interrompue.
R3_ACTIVATE_INTERCEPTED_
JOBS
Exécute des Jobs interceptés sous le contrôle d'UC4.
R3_ACTIVATE_JOBS
Exécute des Jobs déjà planifiés dans SAP sous le contrôle
d'UC4.
R3_ACTIVATE_REPORT
Exécute le rapport indiqué.
Rubriques connexes :
Onglet Post-Traitement Lié
252
Chapter 7 Jobs interceptés
7 Jobs interceptés
Dans SAP, il est possible de définir dans la table TBCICPT1 des critères de filtrage pour les Jobs. En
font partie les indications d'un Client, d'un nom de Job et de l'Utilisateur. Si un Utilisateur entré ici
démarre un Job correspondant aux critères de filtrage, alors celui-ci est mis en statut "Planifié" quelles
que soient les conditions de démarrage (par exemple "Immédiatement").
Activez la fonctionnalité Interception dans la transaction SE38 au moyen du programme INITXBP2.
Dans l'onglet Forme des Jobs SAP, vous pouvez accéder à la table via l'icône
(XBP 2.0) ou utiliser le gestionnaire de critères (XBP 3.0).
et gérer ses entrées
Il est possible de modifier dynamiquement les entrées de la table avec le script R3_MODIFY_
INTERCEPTION.
Il existe plusieurs méthodes pour exécuter les Jobs interceptés :
1. Le Gestionnaire de File d'Attente permet de contrôler et de surveiller les Jobs interceptés.
2. Utilisez R3_ACTIVATE_INTERCEPTED_JOBS.
3. Utilisez R3_GET_INTERCEPTION pour lire la table. Le résultat est enregistré dans un fichier
auquel vous pouvez accéder à l'aide de PREP_PROCESS_FILE.
Si vous démarrez les Jobs interceptés individuellement, et si vous les entrez comme type de
démarrage d'un Groupe, vous pouvez définir le nombre de Jobs s'exécutant en parallèle.
UC4-JCL pour SAP
Elément de script
Description
R3_ACTIVATE_
INTERCEPTED_JOBS
Exécute des Jobs interceptés sous le contrôle d'UC4.
R3_GET_INTERCEPTION
Lit la table de filtre pour les Jobs interceptés et enregistre dans le
protocole d'activation ou un fichier.
R3_MODIFY_
INTERCEPTION
Modifie la table de filtre pour les Jobs interceptés.
Rubriques connexes :
Onglet Forme
Automation Engine
253
7 Analyse du code retour d'application
des steps SAP
Un step SAP peut également contenir un code retour d'application.
Vous pouvez y accéder des façons suivantes :
Avec un élément de script
R3_GET_APPLICATION_RC peut vérifier le code retour d'application d'un ou plusieurs steps de Job et, le
cas échéant, interrompre le Job UC4.
Avec le rapport de Liste de steps
Ce type de rapport spécifique contient des informations sur les steps et également le code retour
d'application. Lisez la valeur à l'aide d'un élément de script XML.
Exemple :
:SET &xmlreport# = XML_OPEN(REPORT,,SSTP)
! Lire le premier élément
:SET &job# = XML_GET_FIRST_CHILD(&rapport xml#)
:SET &nom# = XML_GET_NODE_NAME(&job#)
:PRINT "Premier élément : &nom#"
! Lire le deuxième élément
:SET &enfant# = XML_GET_FIRST_CHILD(&step#)
! Lire les processus enfant du step
:WHILE &enfant# <> ""
:SET &nom# = XML_GET_NODE_NAME(&enfant#)
! Lire le code retour d'application
:IF &nom# = "RC"
: SET &applrc# = XML_GET_NODE_TEXT(&enfant#)
: PRINT "Code retour d'application : &applrc#"
:ENDIF
:SET &enfant# = XML_GET_NEXTSIBLING(&child#)
:ENDWHILE
:XML_CLOSE
Avec le rapport de Job
Les informations sur les steps de Job SAP sont journalisées dans le rapport de Job. Le code retour
d'application est également spécifié dans le rapport de Job, si vous utilisez l'interface UC4.
Si un step ne possède pas de code retour d'application, "Appl-RC n/a" est spécifié dans le rapport de
Job.
La fonction de script PREP_PROCESS_REPORT vous permet de lire les codes retour d'application et
de les traiter.
Dans l'exemple suivant, un ABAP nommé ZZ_TEST_APPL_RC est exécuté une fois dans le Job. Son
code retour d'application doit être lu.
254
Chapter 7 Analyse du code retour d'application des steps SAP
! Sélectionner la ligne contenant l'ABAP et le code retour d'application
:SET &HND# = PREP_PROCESS_REPORT(,,REP,"*ZZ_TEST_APPL_RC*Appl-RC*")
:PROCESS &HND#
:
SET &LIGNE# = GET_PROCESS_LINE(&HND#)
! Trouver l'emplacement dans la ligne où commence "Appl-RC"
:
SET &POS_STR# = STR_FIND(&LIGNE#,"Appl-RC")
! Le code retour d'application se trouve 8 caractères après
:
SET &POS_ARC# = ADD(&POS_STR#,8)
! Lire le code retour d'application
:
SET &ARC# = STR_CUT(&LIGNE#,&POS_ARC#)
! Vérifier si le step fournit vraiment un code retour d'application
:
IF &ARC# <> "n/a"
! Comme la valeur lue est une séquence de caractères, elle doit être
convertie en un nombre
:
SET &ARC#= CINT(&ARC#)
! A partir d'ici se trouvent des instructions de script quelconques qui
traitent le code retour d'application
:
PRINT &ARC#
:
ENDIF
:ENDPROCESS
Attention : le code retour d'application n'est pas disponible dans l'interface XBP.
Gestion des variantes
Les variantes facilitent le traitement dans SAP, étant donné que les Jobs à entrées prédéfinies peuvent
être exécutés. UC4 prend bien entendu en charge l'utilisation des variantes et offre de nombreuses
fonctions à cette fin. Celles-ci permettent par exemple la lecture, la copie ou la modification des
variantes. Il est également possible de supprimer et d'énumérer.
La vérification et la définition de variantes immédiatement avant l'exécution d'un programme ABAP est
d'une très grande importance, étant donné que cela permet d'éliminer des sources d'erreur.
UC4-JCL pour SAP
Elément de script
Description
R3_ACTIVATE_REPORT
Peut exécuter un rapport après spécification d'une variante.
R3_COPY_VARIANT
Copie la variante d'un rapport.
R3_CREATE_VARIANT
Crée une nouvelle variante.
R3_DELETE_VARIANT
Supprime la variante d'un rapport.
R3_GET_VARIANT_
CONTENTS
Affiche le contenu d'une variante.
R3_GET_VARIANTS
Affiche toutes les variantes disponibles dans le protocole
d'activation.
R3_MODIFY_VARIANT
Modifie une entrée dans une variante.
Automation Engine
255
Gestion de BDC
Batch input est une technique classique de reprise en masse des données à partir de systèmes
externes vers le système SAP.
Les dossiers batch input utilisés à cet effet contiennent une ou plusieurs exécutions de transaction, y
compris des données de transaction. UC4 peut lire les dossiers, mais aussi les exécuter et les surveiller
jusqu'à leur fin. Outre l'exécution de dossiers, UC4 permet également l'exécution directe de transactions
dont les données sont définies dans le Job UC4 (Call Transaction).
UC4-JCL pour SAP
Elément de script
Description
R3_ACTIVATE_
SESSIONS
Exécution des sessions batch input.
R3_CALL_
TRANSACTION
Exécute une transaction SAP.
R3_GET_
SESSIONS
Sélectionne des dossiers batch input et affiche le résultat dans le rapport
d'activation ou dans un fichier.
R3_SET_BDCDATA
Définit les données BDC.
Gestion de Spool
Dans UC4, le traitement des Tâches peut être contrôlé par des Jobs. Les paramètres de l'objet Job et
divers scripts vous aident à y parvenir.
Vous pouvez entrer des destinataires de la liste spool dans l'onglet SAP des Jobs SAP. Toutes les
requêtes spool que le Job crée sont envoyées aux destinataires entrés ici.
256
Chapter 7 Analyse du code retour d'application des steps SAP
UC4-JCL pour SAP
De nombreux scripts possèdent des paramètres à l'aide desquels il est possible d'influencer la sortie du
Job. En outre, les fonctions suivantes, qui traitent précisément les requêtes spool, sont à votre
disposition.
Elément de script
Description
R3_CREATE_OUTPUT_REQUEST
Crée un nouvel ordre d'édition pour une requête spool existante.
R3_GET_JOB_SPOOL
Lit la liste spool d'un step de type "programme ABAP".
Vous pouvez spécifier des paramètres de filtrage.
R3_GET_SPOOL_REQUESTS
Sélectionne des requêtes spool avec des Filtres prédéfinis.
R3_SEND_SPOOL_REQUEST
Envoie une requête spool existante.
Gestion d'Evènements
La gestion de processus doit être exécutée à partir d'Evènements pour des applications modernes. Un
contrôle purement chronologique des déroulements ne suffit pas pour prendre en compte la complexité
des environnements d'applications et de systèmes, avec leurs processus imbriqués et leurs
dépendances.
Avec UC4.Event, UC4 met à votre disposition une solution complète pour une gestion de processus
orientée Evènements. Le traitement peut se faire en fonction d'un grand nombre de statuts et
d'Evènements du système. UC4.Event met à disposition cette fonctionnalité pour un grand nombre de
Automation Engine
257
plateformes de système d'exploitation et d'application. La définition et le traitement d'Evènements se font
de manière centrale et pour l'Utilisateur, quelle que soit la plateforme.
Le traitement d'arrière-plan SAP possède également un contrôle d'Evènements. Les Evènements
permettent de déclencher des processus d'arrière-plan SAP. En ce qui concerne la flexibilité et l'étendue
des fonctions, les Evènements SAP sont loin des possibilités d'une mise en œuvre de UC4. Dans
certains cas, il est cependant nécessaire de prendre en compte les Evènements SAP dans UC4. UC4
étend ainsi sa fonctionnalité à la prise en charge des Evènements SAP.
Evènement SAP
Un Evènement SAP est un indicateur qui est défini à l'aide de la transaction SM62. Un Evènement défini
peut être déclenché (manuellement, à partir d'un Job du système d'exploitation ou d'un programme ABAP)
et l'exécution d'un processus d'arrière-plan peut démarrer.
Il existe deux types d'Evènements SAP :
l
l
Evènements système
Ils sont définis par SAP et sont déclenchés automatiquement lorsque des Evènements système se
produisent, comme l'activation d'un nouveau mode d'exploitation. Les Evènements système ne
peuvent être modifiés.
Evènements utilisateur
Ils sont définis par l'Utilisateur. Ces Evènements doivent être déclenchés par un ABAP ou un
programme externe. Par exemple, un programme externe peut signaler au traitement d'arrière-plan
SAP que des données externes sont prêtes à l'importation dans le système SAP.
Prise en charge par UC4
UC4 prend en charge les Evènements SAP et les intègre dans sa gestion de processus centrale. Cette
fonctionnalité peut être nécessaire lorsque le contrôle d'arrière-plan de SAP travaille déjà avec un grand
nombre d'Evènements définis et qu'un changement à une mise en œuvre de UC4 avec des Workflows et
UC4.Event paraît trop compliqué.
Dans la plupart des cas d'application, il est cependant utile de remplacer les Evènements SAP par les
mises en œuvre de UC4 correspondantes.
258
Chapter 7 Analyse du code retour d'application des steps SAP
UC4 peut utiliser les Evènements SAP pour sa gestion de processus. L'exécution des objets UC4 peut
être soumise à la réalisation d'un Evènement SAP. Certains traitements peuvent ainsi par exemple
dépendre de la fin d'une importation.
Les Evènements définis dans SAP peuvent être déclenchés par UC4. L'ensemble des fonctions variées
de UC4 est à votre disposition pour définir la condition et le moment de déclenchement d'un Evènement
SAP. Des processus du système SAP sont démarrés sur la base d'un tel Evènement.
Pour la surveillance des Evènements SAP, un objet Evènement de type "Console" peut également être
utilisé. L'Agent surveille les Evènements SAP déclenchés et transmet les informations aux Evènements
de consoles. En utilisant des Filtres, vous pouvez sélectionner les Evènements SAP dont le moment de
déclenchement marque le coup d'envoi d'un traitement séquentiel ou d'une Alerte.
UC4-JCL pour SAP
Elément de script
Description
R3_GET_EVENT
Attend un Evènement déclenché dans SAP.
R3_RAISE_EVENT
Déclenche un Evènement défini dans SAP.
Rubriques connexes :
Surveillance des Evènements SAP
Gestionnaire de critères
Le gestionnaire de critères SAP permet de définir les conditions de l'historique des Evènements, de la
réorganisation de l'historique des Evènements et de l'interception de Job dans les profils.
Vous pouvez accéder directement au gestionnaire de critères dans le Job SAP.
Fonctionnalités :
l
l
l
Création et suppression de profils
Activation et désactivation de profils
Ajout, modification et suppression de conditions
Dans l'onglet Forme, cliquez sur le bouton
pour ouvrir le gestionnaire de critères.
Vous devez obligatoirement utiliser XBP 3.0 pour accéder au gestionnaire de critères SAP.
Automation Engine
259
UC4-JCL pour SAP
Elément de script
Description
R3_ACTIVATE_CM_
PROFILE
Active un profil dans le Gestionnaire de critères SAP.
R3_DEACTIVATE_
CM_PROFILE
Désactive un profil dans le Gestionnaire de critères SAP.
Reprise de Jobs SAP
Avec l'objet Job de UC4, il est non seulement possible de définir de nouveaux Jobs SAP, mais il est
également possible de reprendre dans UC4 des Jobs existants. Cela présente l'avantage de ne pas
devoir créer une deuxième fois les Jobs.
Pour la reprise de Jobs, l'Interface Utilisateur doit être connectée au système SAP.
Ouvrez un objet Job et passez à l'onglet "Forme". Dans coin supérieur gauche se trouvent de nombreux
boutons. Cliquez sur le symbole . Une fenêtre s'ouvre dans laquelle vous pouvez saisir des Filtres pour
les Jobs SAP, comme le nom ou le numéro de Job.
260
Chapter 7 Analyse du code retour d'application des steps SAP
Cliquez ensuite sur "Chercher". Tous les Jobs SAP correspondant au Filtre que vous avez saisi
s'affichent. Sélectionnez le Job que vous souhaitez reprendre dans UC4, puis cliquez sur OK.
L'objet Job reprend les instructions que contient ce Job. Des paramètres, comme la variante ou le
périphérique de sortie, sont renseignés automatiquement comme vous pouvez le voir dans l'illustration
suivante.
La reprise ne veut pas dire que le Job est supprimé du système SAP. Seuls les paramètres du Job sont
lus et copiés dans l'objet Job.
Automation Engine
261
Cette méthode de reprise de Job est très pratique pour de petites quantités de Jobs. Pour un grand nombre
de Jobs, nous recommandons d'utiliser UC4.ApplicationInterface.
Attention : une reprise de Jobs en masse doit être bien réfléchie et planifiée ! Essayez tout d'abord
d'avoir une vue d'ensemble. Dans la plupart des cas, les Jobs qui se sont développés au fil du temps
peuvent être retravaillés et donc simplifiés. Il se peut même que vous souhaitiez adapter certaines parties
du traitement ou les remplacer par d'autres.
Rubriques connexes :
Reprise des définitions de calendrier SAP
Reprise des définitions de calendrier SAP
SAP offre la possibilité de définir le calendrier d'entreprise à l'aide de la transaction SCAL. L'interface
UC4 contient un programme ABAP avec lequel vous pouvez exporter ces Groupes Calendriers sous
forme de fichier XML, puis les transférer dans votre système UC4. Les règles particulières du Groupe
Calendrier sont également prises en compte.
Une fois l'interface UC4 importée (voir instructions d'installation pour l'Agent SAP), le programme ABAP
"/SBB/UC4_CALE_CREATE" peut être exécuté. Outre l'ID de calendrier d'entreprise, entrez également
les informations de votre système UC4, comme le montre l'illustration suivante.
262
Chapter 7 Analyse du code retour d'application des steps SAP
Les deux cases à cocher situées en fin de formulaire vous permettent de déterminer si la définition de
calendrier doit être créée sous forme de liste spool et/ou sous forme de fichier XML. Dans le dernier cas,
un dialogue s'ouvre dans lequel vous pouvez sélectionner le dossier où enregistrer le fichier.
Importez ensuite le fichier XML dans votre système UC4. Le calendrier d'entreprise est désormais
disponible comme objet Groupe Calendrier.
Le processus de reprise du Calendrier peut bien entendu être automatisé à l'aide d'un Script.
Rubriques connexes :
Groupe Calendrier
Importation et Exportation d'objets
Reprise de Jobs SAP
Automation Engine
263
JAVA
Agent Java EE/JMX pour SAP NetWeaver
Java Management Extensions (JMS) est une technologie qui configure des instruments pour contrôler
et surveiller des applications, appareils et réseaux.
La plate-forme UC4 Automation offre la possibilité d'intégrer des applications Java dans des processus
métiers à l'aide d'un Agent pour JMX. La connexion est établie via un Serveur MBean grâce auquel vous
pouvez accéder aux MBeans à l'aide de fonctions.
SAP NetWeaver comprend, par exemple, plus de 1600 MBeans dans sa version standard. Ceux-ci
peuvent être contrôlés directement. Du côté JAVA, il n'est pas nécessaire de procéder à une prédéfinition
de Jobs exclusifs. Un planificateur n'est pas non plus nécessaire au sein de JAVA, étant donné que cela
est pris en charge par UC4. En raison du standard, cette fonctionnalité peut s'exécuter sur des sources
Java d'autres éditeurs. Les serveurs d'applications qui sont pris en charge sont énumérés dans la checklist des prérequis.
Des éléments de script sont disponibles dans UC4 pour, par exemple, enregistrer, énumérer et supprimer
les MBeans. Il est également possible d'exécuter des MBeans ainsi que de lire et définir des attributs et
des informations.
L'onglet Forme de l'objet Job offre une interface graphique dans laquelle il est aisé de sélectionner ces
fonctionnalités.
Rubriques connexes :
Onglet Forme (JMX)
Généralités sur JMX-JCL
JMX dans SAP NetWeaver
L'utilisation de MBeans dans SAP NetWeaver est possible via l'Agent JMX UC4.
Surveillance du moteur Java EE
A l'aide de JMX, il est possible de consulter le statut du moteur Java EE. Ces informations sont également
affichées dans le Visual Administrator, sous Server -> Services -> Monitoring.
264
Chapter 7 Analyse du code retour d'application des steps SAP
Toutes les fonctions du Visual Administrator sont à votre disposition dans MBeans et peuvent donc
également être utilisées par UC4.
Il existe cependant une restriction : UC4 ne peut utiliser aucune opération ou attribut JMX qui utilise des
classes spécifiques à SAP (par exemple com.sapmarkets.bam.application.User) ou des structures de
données complexes (listes, cartes, séries, etc.).
Le navigateur MBean d'UC4 dans le Job JMX affiche 300 entrées MBean au maximum. Le filtre de
recherche (clic droit sur l'arborescence -> Appliquer le filtre ...) permet de rechercher précisément certains
MBeans.
Exemple : vous voulez consulter le nombre de tentatives de connexion échouées. Dans la première
illustration, cette valeur se trouve sous le nœud Security -> Aggregated Data. Il est ainsi possible de filtrer
sur "*Security/Aggregated Data/UnsuccessfulLogonAttemptsCount*" dans le navigateur MBean. Dans
notre environnement, cela renvoie exactement un MBean comme résultat.
Ici, vous pouvez sélectionner un des attributs "Value", "MaxValue" ou "MinValue". Il est possible de
planifier, dans un Job UC4, une consultation périodique du nombre d'identifications échouées.
Démarrage et arrêt d'un service
Le Visual Administrator configure également les services, les démarre et les arrête. Etant donné que des
MBeans JMX sont également utilisés ici, cette fonctionnalité peut être exécutée à l'aide de l'Agent.
Ces services sont énumérés dans le Visual Administrator, sous Server -> Services :
Automation Engine
265
Exemple : le service Telnet doit être démarré ou arrêté.
Pour afficher tous les services dans le navigateur MBean, il est possible de filtrer en fonction de "*SAP_
Java EEServicePerNode*". Les MBeans renvoyés correspondent aux services.
Tous les services ont une méthode "start" et "stop". Sélectionnez l'entrée "telnet" dans l'arborescence.
Dans le détail, il est possible de sélectionner ensuite la méthode "stop". Après avoir cliqué sur OK, un Job
UC4 qui arrête le service Telnet est créé :
266
Chapter 7 Analyse du code retour d'application des steps SAP
La modification est immédiatement visible dans le Visual Administrator :
Automation Engine
267
Exécution de Jobs dans la pile Java (JXBP)
UC4 vous offre les possibilités suivantes pour gérer des Jobs dans le planificateur Java de SAP :
l
l
l
l
Démarrer les Jobs avec les paramètres
Interrompre les Jobs
Reprendre le protocole dans le rapport de Job.
Surveiller les Jobs par filtre à l'aide du RemoteTaskManager
La définition du Job Java doit d'abord être déployée dans le planificateur Java. Elle est ainsi visible par
l'Agent SAP. Ce n'est qu'après que vous pouvez créer une instance à partir d'une définition de Job
existante à l'aide d'un objet Job.
Un objet Job SAP appartient toujours à une seule définition de Job Java.
Créez un objet Job SAP pour les Jobs du planificateur Java et sélectionnez l'Agent SAP ainsi qu'un objet
Login. Vous pouvez sélectionner dans l'onglet Forme la définition de Job qui doit être exécutée. La partie
inférieure de l'onglet affiche automatiquement les paramètres correspondants.
L'onglet "Protocole du Job" contient les options suivantes :
l
l
l
Supprimer après x jours - Le protocole du Job est supprimé après x jours dans le planificateur Java.
Ne pas supprimer - Le protocole du Job n'est pas supprimé dans le planificateur Java.
Utiliser les paramètres par défaut - Le paramètre de la définition du Job permet de définir le délai de
suppression du protocole du Job dans le planificateur Java.
Le protocole du Job est toujours supprimé avec l'instance du Job.
Rapport pour les statistiques du Job Java
Un objet Job SAP exécuté peut, entre autre, comporter un rapport (SJJI) contenant des informations
relatives au Job Java. Dans l'objet Job, dans l'onglet SAP, cochez la case correspondante dans la zone
"Rapports optionnels".
Installation
Création du planificateur externe dans SAP :
1.
2.
3.
4.
Connectez-vous à l'administrateur SAP Netweaver par le biais de l'interface web.
Sélectionnez l'onglet "Job".
Cliquez sur le lien "Planificateur Java" -> "Planificateur externe".
Ajoutez une nouvelle entrée dans la liste du planificateur Java externe enregistré à l'aide du bouton
"Ajouter".
5. Renseignez les champs. Indiquez un nom et la description "UC4 Operations Manager".
6. Cliquez ensuite sur "Ajouter".
Création d'un objet Connexion dans UC4 :
1.
2.
3.
4.
Connectez-vous au Client système 0000.
Créez un nouvel objet Connexion pour SAP.
Ouvrez l'objet Connexion et sélectionnez le type de connexion "Internet" dans l'onglet Attributs.
Allez dans l'onglet Internet et indiquez les données de connexion au planificateur Java SAP.
Indiquez quel Utilisateur vous avez également utilisé lorsque vous avez ajouté UC4 comme
planificateur externe.
268
5.
6.
7.
8.
9.
Chapter 7 Analyse du code retour d'application des steps SAP
Enregistrez l'objet Connexion et fermez-le.
Allez dans le dossier "HOST" et ouvrez l'objet de l'Agent SAP.
Sélectionnez l'objet Connexion dans l'onglet Agent dans le champ "Java Basis".
Sauvegardez l'objet Agent et fermez-le.
Si l'Agent SAP est en cours d'exécution, vous devez le redémarrer.
Cas exceptionnels
Dans un environnement comportant plusieurs nœuds, les Jobs du planificateur Java sont exécutés sur le
nœud sur lequel le service de planification est actif. Lorsqu'un nœud est désactivé ou défaillant, le
traitement du Job se poursuit sur un autre nœud.
Si l'Agent perd la connexion au planificateur Java pendant l'exécution du Job, il tente périodiquement de
restaurer la connexion. Le Job reste actif dans le système UC4 et a le statut "Attente d'un Système
distant".
Si l'appel du planificateur Java génère une erreur, le Job est alors interrompu. Dans ce cas, il n'existe pas
de rapport sur les statistiques du Job Java. L'erreur est journalisée dans le rapport "Log d'Agent" de l'objet
Log et dans le fichier log de l'Agent SAP. Le Job est interrompu avec le code retour 403.
Une reprise est impossible. Dans la mesure où il n'y a aucun JCL UC4, le Job complet est toujours relancé
dans le planificateur Java.
Codes retour
Statut SAP
Code retour du Job dans UC4
COMPLETED
HOLD
RUNNING
SCHEDULED
STARTING
UNKNOWN
0
ERROR
501
CANCELLED
502
Gestion du cycle de vie
Surveillance de SAP NetWeaver
Surveillance des moniteurs
SAP offre une série de moniteurs avec lesquels vous pouvez surveiller l'environnement SAP ainsi que
les composants qui en font partie. La fonction R3_GET_MONITOR lit ses informations et les prépare en
vue du traitement.
Dans l'exemple suivant, le moniteur "All Monitoring Contexts" est lu et enregistré dans un fichier texte :
Automation Engine
269
R3_GET_MONITOR MONITOR_SET="SAP CCMS Technical Expert Monitors",
MONITOR="All Monitoring Contexts", FILE="C:\UC4_und_
SAP\AllMonitoringContexts.txt"
La fonction script PREP_PROCESS est très utile si vous ne souhaitez filtrer que certaines parties des
informations du moniteur. Elle fournit, sur la base d'un Filtre, une séquence de données qui peut ensuite
être traitée. L'Agent SAP prépare les informations du moniteur sous forme de colonnes. Dans l'exemple
suivant, les lignes contenant "Enqueue" sont filtrées et quatre colonnes passent dans le traitement
ultérieur :
:SET &HND# = PREP_PROCESS("SAP01","R3MONITOR","*Enqueue*","MONSET=SAP CCMS
Technical Expert Monitors","MONNAM=All Monitoring Contexts","COL=FILE","UC_
LOGIN=LOGIN.SAP")
:PROCESS &HND#
:
SET &Contexte# = GET_PROCESS_LINE(&HND#, CONTEXT)
:
SET &Nom# = GET_PROCESS_LINE(&HND#, NAME)
:
SET &Valeur# = GET_PROCESS_LINE(&HND#, VALUE)
:
SET &Statut# = GET_PROCESS_LINE(&HND#, STATUS)
:
PRINT "&Contexte# --- &Nom"
:
PRINT "Valeur : &Valeur#"
:
PRINT "Status: &Statut#"
:
PRINT ""
:ENDPROCESS
En arrière-plan, l'exemple exécute également la fonction R3_GET_MONITOR. Vous trouverez des
informations plus précises dans la description de la fonction script PREP_PROCESS.
L'objet RemoteTaskManager autorise également une surveillance dans le système SAP. Il affiche, à
partir des critères de filtrage définis, les Jobs ayant été déclenchés par SAP.
UC4-JCL pour SAP
Elément de script
Description
R3_GET_MONITOR
Lit des données d'un moniteur SAP.
Surveillance des Evènements SAP
Les Evènements ont une très grande importance dans le traitement en arrière-plan dans SAP. L'objet
Evènement du type "console" peut être utilisé pour surveiller les Evènements SAP.
L'Agent interroge périodiquement le système SAP au sujet des Evènements SAP survenus et les
signale aux Evènements de console actifs. L'administrateur UC4 peut régler l'intervalle dans la Variable
UC_HOSTCHAR_DEFAULT d'UC4 avec la clé JOB_CHECKINTERVAL.
Un Filtre vous permet de définir les Evènements SAP que vous souhaitez suivre. Si l'Agent annonce un
Evènement SAP, les instructions de l'onglet "!Script" sont exécutées. Vous pouvez ainsi introduire
d'autres étapes dans le traitement.
Dans !Script, utilisez la fonction GET_EVENT_INFO. Elle vous fournit des détails sur l'Evènement
SAP qui s'est produit.
270
Chapter 7 Analyse du code retour d'application des steps SAP
Dans la table figurant dans la partie inférieure de l'onglet, il est possible d'entrer plusieurs lignes de filtrage.
Si l'Agent annonce un Evènement SAP correspondant à au moins une ligne de filtre, le !Script est exécuté.
S'il correspond à plusieurs filtres, le !Script n'en est pas pour autant traité plusieurs fois.
Des filtres se recoupant peuvent également se produire si vous utilisez plusieurs Evènements de console.
En l'occurrence, l'Agent annonce l'Evènement SAP à tous les Evènements de console.
Outre l'Evènement de console, UC4 met également à votre disposition des fonctions avec lesquelles
vous pouvez traiter des Evènements SAP à partir des objets Job. R3_GET_EVENT attend qu'un
Evènement se déclenche dans SAP et avec R3_RAISE_EVENT, vous déclenchez vous-même un
Evènement défini dans SAP.
Déroulement
1. Créez un objet Evènement du type "console".
2. Ouvrez-le et passez à l'onglet "Console". Il est possible d'y spécifier l'Agent qui est lié au système
SAP et les critères de filtre pour les Evènements SAP.
3. Dans l'onglet "!Script", vous entrez les instructions de Script devant être exécutées dès qu'un
Evènement SAP correspondant aux critères de filtre est annoncé. La fonction script GET_EVENT_
INFO peut vous fournir des détails sur l'Evènement SAP.
4. Renseignez selon les besoins les autres onglets de l'Evènement de console et enregistrez l'objet.
5. L'Evènement de console peut désormais être activé pour relier les Evènements SAP dans votre
traitement.
Conseils
La condition requise pour la surveillance d'Evènements SAP par le type d'Evènement "Console" est
XBP 3.0. L'utilisation de l'interface XBP 3.0 doit être définie par l'administrateur UC4 dans le fichier INI de
Automation Engine
271
l'Agent SAP.
Si l'Agent perd la connexion au système SAP, un certain nombre d'Evènements SAP s'accumulent et
l'Agent n'est pas capable de les transmettre aux Evènements de console. Une fois la connexion rétablie, il
vérifie cette situation et annonce également ces Evènements SAP aux Evènements de console
concernés.
En raison de l'éventuelle grande quantité de données, il ne lit pas tous les Evènements SAP en une
seule fois. L'administrateur UC4 peut configurer en conséquence le comportement à l'aide du paramètre
maxEventTimeSpan= du fichier INI de l'Agent.
Si l'Agent est terminé, il ne peut surveiller aucun Evènement SAP pendant l'arrêt. Après redémarrage,
l'Agent détermine le moment auquel il a surveillé pour la dernière fois les Evènements SAP et annonce
également les Evènements SAP qui se sont produits durant l'arrêt.
Tous les Agents reliés au système SAP demandent les Evènements SAP. Autrement dit, chaque
Agent annonce tous les Evènements SAP survenus à tous les Evènements de console.
Si l'heure du système SAP retarde par rapport à l'heure du système UC4, les premiers Evènements
SAP ne peuvent pas être recueillis, s'ils tombent dans l'intervalle de temps situé entre les différences
d'heure.
Rubriques connexes :
Gestion d'Evènements
Exemple - Réaction à des Evènements externes
SAP Adaptive Computing Controller
Prise en charge de SAP ACC
Adaptive Computing désigne l'attribution dynamique de ressources matérielles devant être mises à
disposition des services de manière ciblée. SAP Adaptive Computing Controller (ACC) est une
application basée sur Java EE Engine de SAP Web Application Server. Elle permet entres autres de
démarrer et d'arrêter des services. UC4 peut établir une connexion à SAP ACC et prend ainsi en charge
le contrôle des services. Un MBean permet d'utiliser cette fonctionnalité et peut être exécuté par
UC4.Agent pour Java EE/JMX.
L'Agent doit être installé de manière autonome, c'est-à-dire sans serveur d'applications.
272
Chapter 7 Analyse du code retour d'application des steps SAP
Fonctions du MBean "ACC" :
l
l
l
Démarrage d'un service
Arrêt d'un service
Déplacement d'un service
L'Utilisateur se connecte à Adaptive Computing Controller à partir de l'objet Login du Job. Il doit
posséder les droits correspondants pour les services.
Rubriques connexes :
Utilisation du MBean ACC
Utilisation du MBean ACC
Le MBean intitulé "ACC" que nous mettons à votre disposition est livré avec l'Agent JMX et doit être
installé en complément.
MBean
Description
Nom
UC4:name=ACC
Automation Engine
Attributs
273
"ACC_URL" - Adresse d'Adaptive Computing Controller au format http://hôte:port
HTTP/ACCGW/ACC ou https://hôte:port HTTPS/ACCGW/ACC
"ServiceID" - ID du service
"Host" - Nom de l'hôte physique
"ForceStartOnSmallServers" - Indique si le service doit également démarrer sur des hôtes
ne correspondant pas aux exigences du service. Valeurs autorisées : "YES" et "NO"
(valeur par défaut)
"ReplyLog" - Indique si le log complet doit être renvoyé. Valeurs autorisées : "YES" (valeur
par défaut) et "NO"
Opérations "start" - Démarre le service sur l'hôte indiqué. Si l'attribut "Host" n'est pas défini, un hôte
adapté est sélectionné par ACC.
"stop" - Arrête le service. L'attribut "Host" est donc ignoré, car le ServiceID est clair.
"relocate" - Arrête le service et le démarre sur l'hôte indiqué.
Déroulement
L'utilisation du MBean est simple à mettre en œuvre :
1. Enregistrez le MBean avec JMX_CREATE_MBEAN.
2. Définissez les attributs, par exemple le ServiceID avec la fonction JMX_SET_ATTRIBUTE ou
JMX_COMPOSITE_ADD. Nous recommandons d'utiliser la deuxième. Lorsque plusieurs Jobs
JMX sont exécutés parallèlement, il est possible qu'ils accèdent en même temps à l'instance du
MBean et qu'ils remplacent ainsi les valeurs réciproquement. JMX_COMPOSITE_ADD vous
permet de définir les valeurs dans une liste et de les transmettre ensemble au MBean. Il est ainsi
impossible d'écraser les valeurs.
Dans la fonction JMX_COMPOSITE_ADD, KEY= correspond au nom de l'attribut et VALUE= à
la valeur de l'attribut.
3. Exécutez ensuite l'opération souhaitée avec la fonction JMX_INVOKE.
Exemples
Démarrage d'un service
Le service "MYSERVICE" doit être démarré sur PC01.
! Inscription du MBean
JMX_CREATE_MBEAN
EXISTS="IGNORE",CLASSNAME="com.uc4.sap.ACC",NAME="UC4:platform=SAP,name=Ada
ptiveComputingController"
! Définition de l'attribut
JMX_COMPOSITE_ADD NAME="attribute",KEY="ACC_
URL",VALUE="https://sap03:50001/ACCGW/ACC"
JMX_COMPOSITE_ADD NAME="attribute",KEY="ServiceID",VALUE="MYSERVICE"
JMX_COMPOSITE_ADD NAME="attribute",KEY="Host",VALUE="pc01"
JMX_COMPOSITE_ADD
NAME="attribute",KEY="ForceStartOnSmallServers",VALUE="YES"
! Appel du MBean
JMX_INVOKE MBEAN="UC4:name=ACC",OPERATIONNAME="start", PARAMS="attribute"
274
Chapter 7 Analyse du code retour d'application des steps SAP
Arrêt d'un service
Le service "MYSERVICE" doit être arrêté. Comme le ServiceID est clair, vous n'avez pas besoin
d'indiquer le nom de l'hôte.
! Inscription du MBean
JMX_CREATE_MBEAN
EXISTS="IGNORE",CLASSNAME="com.uc4.sap.ACC",NAME="UC4:platform=SAP,name=Ada
ptiveComputingController"
! Définition de l'attribut
JMX_COMPOSITE_ADD NAME="attribute",KEY="ACC_
URL",VALUE="https://sap03:50001/ACCGW/ACC"
JMX_COMPOSITE_ADD NAME="attribute",KEY="ServiceID",VALUE="MYSERVICE"
! Appel du MBean
JMX_INVOKE MBEAN="UC4:name=ACC",OPERATIONNAME="stop", PARAMS="attribute"
Déplacement d'un service
Le service "MYSERVICE" doit être arrêté et redémarré sur un autre hôte. Dans ce cas, les valeurs ne sont
pas directes, mais indiquées à l'aide de Variables de Scripts.
! Inscription du MBean
JMX_CREATE_MBEAN
EXISTS="IGNORE",CLASSNAME="com.uc4.sap.ACC",NAME="UC4:platform=SAP,name=Ada
ptiveComputingController"
! Définition de l'attribut
JMX_COMPOSITE_ADD NAME="attribute",KEY="ACC_URL",VALUE="&url#"
JMX_COMPOSITE_ADD NAME="attribute",KEY="ServiceID",VALUE="&service#"
JMX_COMPOSITE_ADD NAME="attribute",KEY="Host",VALUE="&host#"
! Appel du MBean
JMX_INVOKE MBEAN="UC4:name=ACC",OPERATIONNAME="relocate",
PARAMS="attribute"
Codes retour
En cas d'erreur, le Job JMX s'interrompt et reçoit un code retour correspondant à la cause. Le rapport
contient le message d'erreur. En outre, il affiche le log dans la mesure où vous ne définissez pas l'attribut
"ReplyLog" sur "NO".
l
l
l
l
l
l
l
l
l
l
l
l
l
l
0 - Aucune erreur n'est survenue.
1 - ServiceID non valide
2 - Nom d'hôte non valide
3 - Commande non valide
4 - Service verrouillé, aucune opération possible
5 - Trop de services sur l'hôte sélectionné
6 - Temps de la requête dépassé
7 - Le Serveur ne remplit pas les prérequis du service
8 - Le service ne peut pas être démarré.
9 - Le service ne peut pas être arrêté
10 - Le service dépasse le nombre d'instances maximum
11 - Serveur verrouillé, aucune opération possible
12 - Sélection automatique de Serveur : il n'y a pas de Serveur disponible ou de Serveur disponible
remplissant les prérequis du service
97 - L'Utilisateur de CCI ne possède pas suffisamment de droits (voir le concept de rôles introduits
avec SP4)
Automation Engine
l
l
275
98 - Erreur Parser XML
99 - Erreur inconnue (voir l'entrée du log pour plus de détails)
Rubriques connexes :
Prise en charge d'ACC
Intégration de UC4 à SAP Solution Manager
SAP Solution Manager est fourni avec tous les systèmes SAP à partir de Web Application Server
(WAS) 6.10. Il doit devenir le logiciel central de surveillance pour les systèmes SAP, mais aussi pour
les applications externes. Cela conduit à une centralisation de tous les services dans le cadre d'un
environnement SAP.
L'Agent SAP permet à UC4 d'intégrer l'ensemble des processus de gestion de l'entreprise dans SAP
Solution Manager.
Surveillance
La surveillance centrale est un des éléments essentiels de SAP Solution Manager. La partie de
surveillance se décompose, à son tour, en deux domaines essentiels :
l
l
exploitation
surveillance des processus métier
Alors que pour le premier domaine, il s'agit principalement de déroulements et d'états techniques, le
domaine de la surveillance des processus métier représente les processus métier logiques des systèmes
SAP ainsi que leur surveillance.
Surveillance de l'exploitation
Dans le domaine Surveillance de l'exploitation, Solution Manager collabore avec l'infrastructure de
surveillance existante dans CCMS (Computing Center Management Systems). Les statuts des systèmes
et des processus sont représentés dans une arborescence.
Jusqu'à présent, ces moniteurs se limitaient aux systèmes SAP. Désormais, SAP met à disposition des
interfaces pour applications externes, pour annoncer leurs propres données de statut à Solution Manager
et pour les afficher dans l'arborescence de surveillance.
L'Agent SAP utilise une telle interface pour accéder à la structure du moniteur dans CCMS. Il utilise pour
cela un objet Connexion pour ABAP Basis. A l'aide de scripts, vous pouvez créer et modifier des attributs
et supprimer des nœuds :
Elément de script
Description
R3_DELETE_NODE
Suppression d'un nœud.
R3_SET_LOG_ATTR
Définition d'un attribut log.
R3_SET_PERF_ATTR
Définition d'un attribut de performance.
R3_SET_STATUS_
ATTR
Définition d'un attribut de statut.
R3_SET_TEXT_ATTR
Définition d'un attribut de texte.
276
Chapter 7 Analyse du code retour d'application des steps SAP
L'onglet Forme des Jobs SAP vous permet d'examiner les nœuds. Un navigateur séparé affiche le
moniteur "All Monitoring Contexts" de l'ensemble de moniteurs "SAP CCMS Technical Expert Monitors".
Les couleurs des nœuds correspondent au statut d'alerte actuel.
Surveillance des processus métier
Chacun des processus et systèmes informatiques forment la base des processus métier. Avec SAP
Solution Manager, ces contextes peuvent être définis et affichés. Toutes les données disponibles dans la
surveillance de l'exploitation sont à disposition pour modéliser les processus métier.
UC4 contrôle les processus centraux de tous les systèmes et applications de l'entreprise. Grâce à
l'intégration de UC4 à SAP Solution Manager, il est possible de représenter dans le système SAP les
processus métier de l'entreprise et de les surveiller.
Automation Engine
277
Si une erreur se produit dans un processus métier, son origine peut être constatée immédiatement. Le
temps nécessaire à la correction de l'erreur est ainsi réduit et le processus métier redémarre le plus vite
possible.
Contrôle des processus
Solution Manager contient également la fonctionnalité pour le contrôle des processus d'arrière-plan. A
l'heure actuelle, cette fonctionnalité est accessible via les transactions SM36 et SM37.
Ces fonctions sont entièrement prises en charge par UC4. L'ensemble du traitement d'arrière-plan SAP
peut être contrôlé et surveillé de manière centralisée avec UC4. En outre, UC4 associe ces processus
SAP aux processus de tous les autres systèmes et applications de l'entreprise.
Rubriques connexes :
Monitor SAP NetWeaver
Inscription dans le système Landscape Directory
Le système Landscape Directory (SLD) de SAP donne un aperçu des composants logiciels installés.
Vous pouvez configurer l'Agent SAP de sorte qu'il s'inscrive dans le SLD au démarrage.
Les étapes suivantes sont nécessaires :
1. Connectez-vous au Client système 0000.
2. Créez un nouvel objet Connexion pour SAP.
278
3.
4.
5.
6.
7.
8.
Chapter 7 Analyse du code retour d'application des steps SAP
Ouvrez l'objet Connexion et sélectionnez le type de connexion "Internet" dans l'onglet Attributs.
Allez dans l'onglet Internet et indiquez les données de connexion au SLD.
Enregistrez l'objet Connexion et fermez-le.
Allez dans le dossier "HOST" et ouvrez l'objet de l'Agent SAP.
Sélectionnez l'objet Connexion dans le champ "Moniteur" de l'onglet Agent.
Sauvegardez l'objet Agent et fermez-le.
L'Agent SAP essaie désormais de se connecter au SLD à chaque démarrage. Même si l'inscription
échoue, par exemple à cause d'une erreur dans les paramètres de connexion, l'Agent SAP n'interrompt
pas le démarrage.
Le fichier log de l'Agent SAP contient un message indiquant si l'inscription à SLD a réussi.
Analyse du log système et du log application
UC4 permet la lecture de logs SAP. En font partie les logs application mais aussi le log système.
Les deux types de log fournissent des informations pour le traitement et les éventuelles situations d'erreur.
Avec les fonctions mises à disposition par UC4, vous pouvez lire les entrées en utilisant des Filtres et les
enregistrer dans le rapport ou dans les fichiers. Il est ensuite possible d'analyser le résultat avec PREP_
PROCESS et PREP_PROCESS_FILE.
Pour le log système, il existe une autre particularité. Les Jobs interrompus peuvent enregistrer les
dernières lignes du log système dans un rapport spécial nommé SLOG. Cela vous facilite l'analyse des
erreurs. L'objet Connexion de l'Agent SAP permet de définir entre autres paramètres le nombre de lignes
du log système prises en compte.
UC4-JCL pour SAP
Elément de script
Description
R3_GET_
APPLICATIONLOG
Cherche les messages du log application et les génère dans le rapport ou
le fichier.
R3_GET_SYSTEMLOG
Lit les informations d'une période donnée d'un logging système SAP.
Commutation des modes de fonctionnement
Avec les modes de fonctionnement de SAP, les ressources système disponibles sont utilisées de
manière optimale. Il est possible de définir, en fonction de l'heure du jour, divers paramètres pour le
traitement d'arrière-plan ou par dialogue. Ce type d'attribution des ressources ne nécessite aucun
redémarrage du système R/3.
Automation Engine
279
UC4 prend, bien entendu, en charge cette fonctionnalité SAP. Le Script R3_SWITCH_OPMODE est à
votre disposition pour commuter les modes de fonctionnement pour tous les serveurs d'applications SAP
ou seulement pour certains.
UC4-JCL pour SAP
Elément de script
Description
R3_SWITCH_OPMODE
Change le mode de fonctionnement dans SAP.
7.11.1 SAP Banking
Gestion de processus UC4 pour SAP for Banking
SAP développe, en collaboration avec d'importantes banques européennes, une solution dédiée à la
gestion des comptes dans SAP for Banking. Les développeurs d'UC4 ont travaillé à l'intégration de
cette nouvelle solution SAP dans la gestion de processus éprouvée d'UC4.
Il en résulte la création d'UC4.Agent for SAP AM/BCA offrant des capacités complètes de gestion de
processus pour les transactions bancaires. UC4 intègre cette nouvelle solution SAP dans sa gestion de
processus centrale et assure les processus métier pour toute l'entreprise et sur toutes les plateformes.
Déroulements dans SAP Banking
Une des particularités de SAP Transaction Banking est que des déroulements entiers peuvent être
enregistrés dans la personnalisation. La définition du déroulement correspond à un type de Workflow (sous
forme tabulaire). Les déroulements sont en fait de soi-disant traitements de fin de journée (TEV).
Le contrôle de ces déroulements doit prendre en compte les facteurs suivants :
Réseau de processus
Le réseau de processus est créé et surveillé à l'aide d'une fonction de menu d'une définition de
déroulement dans la personnalisation. Il possède un ID unique devant être attribué pour chaque cycle. Le
réseau de processus se compose d'une série de processus. Un processus est une fonction d'application
qui est toujours traitée, d'un point de vue technique, en deux étapes :
280
Chapter 7 Analyse du code retour d'application des steps SAP
1. La fonction d'application même
2. La partie de surveillance de cette fonction d'application. La partie de surveillance n'est cependant
exécutée que si le processus a été initié via un réseau de processus.
Il est désormais possible de traiter de façon synchrone et asynchrone l'ensemble de la fonction
d'application, y compris la partie de surveillance.
Traitement synchrone
La fonction d'application, y compris la surveillance, est traitée de façon synchrone à partir d'un composant
de fonction, c'est-à-dire que le composant de fonction se termine de façon synchrone avec la fonction
d'application.
Traitement asynchrone
La fonction d'application ainsi que la surveillance sont démarrées en tant que Jobs d'arrière-plan, sachant
que le Job de surveillance suit toujours le Job d'application.
Processus avec parallélisation
Pour certains processus (avec données de masse), une parallélisation du traitement (similaire à IS-U/IS-T)
est prévue. Il n'existe, hélas, aucune fonctionnalité de base pour ce type d'exigence.
Un processus avec parallélisation crée des Jobs d'arrière-plan parallèles, c'est-à-dire un Job d'arrière-plan
parallèle ainsi qu'un Job de surveillance le suivant. Si le processus est démarré de façon asynchrone, un
"Job père" est créé et il est suivi d'un Job de surveillance qui reste actif pour l'ensemble de la durée du
processus.
Les processus ont un code de retour d'application
Les processus comportent un code retour d'application. Le statut technique normal (par ex. Job terminé)
ne suffit pas à garantir un traitement réussi. En outre, un log d'application est généré par rapport à chacun
des composants d'un processus (composant de fonction, ABAP, ABAP de surveillance, etc.).
Démarrage de réseaux de processus et de processus
Les réseaux de processus sont liés à des fonctions de dialogue et sont initiés par celles-ci. Selon le cas
applicatif, les processus sont alors démarrés de façon synchrone ou asynchrone. (les grands cycles de
façon asynchrone, bien entendu).
Exigences sur UC4
Un Workflow UC4 correspond à une définition du déroulement de la personnalisation. Les Tâches du
Workflow représentent alors les processus.
Le contrôle de Job de la base SAP n'offre pas des moyens appropriés pour le contrôle de processus dans
AM/BCA. Pour le contrôle des processus individuels, il n'est pas possible de créer des Jobs d'arrière-plan
standard, étant donné que la partie de surveillance de la fonction d'application n'a pas été démarrée et
qu'ainsi aucun code retour d'application n'a pu être généré.
Cela n'aurait pas été judicieux de modifier toutes les applications de façon à ce que cette fonction de
surveillance se déroule de façon implicite. Cela aurait créé un trop grand nombre de programmes ; de plus,
le code retour d'application aurait dû être communiqué via le log de Job.
C'est pourquoi il est resté l'alternative de créer pour chaque Tâche à partir du Workflow UC4 un réseau de
processus à ID distinct dans le système SAP. Ce réseau de processus ne contient jamais qu'un seul
Automation Engine
281
processus. Si le processus est démarré à l'aide du réseau de processus, cela conduit en fin de compte
toujours à la création de deux Jobs batch asynchrones dans le système SAP, la fonction d'application et la
fonction de surveillance.
Pour UC4, des éléments de script contrôlant les processus ont été définis (BCA_ACTIVATE_
PROCESS).
Pour permettre la surveillance (vérification de statut) par UC4, SAP a étendu l'interface avec une fonction
correspondante.
Description de fonction UC4
Démarrage et surveillance de processus
Cette fonction encapsule un seul processus dans un réseau de processus, démarre le processus et le
surveille. Avec la fin du processus, le réseau de processus est également terminé parce qu'il ne contient
que ce processus.
Exploitation des codes retour d'application
Les processus individuels renvoient des codes retour d'application. Ceux-ci peuvent être analysés dans
UC4. (par exemple dans Postscript).
Exploitation des logs d'application
Les processus d'un réseau de processus génèrent des logs d'application. Il n'existe cependant pas un
rapport de 1:1 entre les processus ou les réseaux de processus et les logs d'application. C'est pourquoi
l'exploitation des logs d'application est une procédure distincte dans UC4.
Cette fonction met à une disposition une possibilité de sélectionner les logs d'application en fonction de
certains critères (des numéros de log sont le résultat). Les messages et textes du log d'application
correspondants peuvent ensuite être lus en fonction des numéros de log. Les textes sont générés dans un
fichier texte ou dans un rapport.
Intégration dans les réseaux de Job
Les processus contrôlés par UC4 dans SAP AM/BCA peuvent être intégrés aux Workflows d'entreprise.
Les dépendances pour les traitements peuvent être mises en œuvre et surveillées facilement dans
d'autres systèmes SAP, mais aussi dans d'autres systèmes.
Statistiques complètes
Pour tous les processus contrôlés avec UC4, des statistiques complètes sont à disposition pour des
analyses et planifications ultérieures. Il en va bien entendu de même pour les processus de SAP for
Banking.
UC4-JCL pour SAP
Elément de script
Description
BCA_ACTIVATE_
PROCESS
Démarre et surveille un processus qui se déroule dans un réseau de
processus distinct.
282
Chapter 7 Analyse du code retour d'application des steps SAP
7.11.2 SAP Financial Closing Cockpit
Intégration d'UC4 dans SAP Closing Cockpit
SAP Financial Closing Cockpit permet de planifier différentes Tâches qui doivent être réalisées dans un
ordre déterminé et à moment précis. Grâce à l'intégration d'UC4 dans cette fonctionnalité, il est possible
d'activer des objets dans un système UC4 via des Tâches Closing Cockpit.
Conditions
Service Web UC4.Internal
L'utilisation du service Web UC4.Internal est possible pour les serveurs d'application suivants :
l
l
l
l
Sun Glassfish v2, 3
JBoss 5.0
IBM WAS CE 2.0
SAP Netweaver CE 7.1
Pour l'installation, suivez la description de l'installation pour le serveur d'application souhaité. Veillez à
utiliser la version actuelle du service Web UC4.Internal.
Version SAP
Pour SAP Basis, il convient d'utiliser une version de Support Package spécifique ou supérieure. Elle
dépend de la version de SAP Release utilisée.
Release
Package Name
700
SABKB70017
701
SABKB70101
710
SABKB71007
Une condition supplémentaire est l'utilisation de SAP ERP version 6.00.
Fichiers fournis
Les fichiers cryptés sont fournis dans le fichier SAP_CloCo.zip.ucc du répertoire
CD:FRAMEWORK\SAPCLOSINGCOCKPIT.
Installation
1.
l
Décryptage du fichier fourni
Pour le décryptage du fichier SAP_CloCo.zip.ucc, utilisez le programme UCYBCRYP.EXE qui se
trouve sur le CD UC4, dans le dossier CD:\TOOLS\ENCRYPT. Exécutez maintenant le
programme via la ligne de commande avec les paramètres suivants :
UCYBCRYP.EXE -d -f SAP_CloCo.zip.ucc -lFichier de licence
Le fichier de licence vous est fourni par le Support (Numéro de Client.TXT).
Automation Engine
l
l
283
Vous obtenez le fichier compressé nommé SAP_CloCo.ZIP
Décompressez le fichier SAP_CloCo.ZIP
2.
Chargement des transports SAP
Pour l'intégration, des programmes ABAP spécifiques qui doivent être chargés au moyen de l'importation
dans le système SAP sont nécessaires. Vous trouverez pour cela 2 fichiers dans l'archive SAP_
CloCo.ZIP
l
l
KNNNNNN.SID - Fichier d'information
RNNNNNN.SID - Fichier de données
Copiez ces fichiers dans le répertoire de transport de SAO (par exemple, /usr/sap/trans/). Le fichier R doit
être enregistré dans le sous-dossier "data" et le fichier K dans "cofiles".
Connectez-vous au système SAP et importez l'ordre correspondant avec la transaction STMS. A la fin de
l'importation, ouvrez et vérifiez le protocole de transport de l'ordre : toutes les étapes doivent posséder le
code retour 0 (terminé avec succès) ou 4 (terminé avec avertissement).
3.
Etablissement de la connexion RFC HTTP
Exécutez la transaction SM59 et choisissez le point "Connexion HTTP au serveur externe". Etablissez
ensuite une nouvelle connexion.
Attribuez un nom à la destination RFC (par exemple, UC4_WEBSERVICE) avec une description.
Onglet : Configurations techniques :
Dans le champ "Machine cible", il faut entrer le nom d'hôte du serveur d'application sur lequel s'exécute le
service Web UC4.Internal. Définissez le numéro de port avec le champ "N° de service".
Onglet : Connexion et sécurité :
Sélection de l'option "Authentification par défaut". Il faut désormais indiquer les données pour l'accès au
système UC4 : Pour cela, entrez dans le champ "Utilisateur" le Client UC4, le nom d'utilisateur et le
service, séparés par une barre oblique. Une fois le mot de passe saisi, enregistrez la connexion RFC.
284
Chapter 7 Analyse du code retour d'application des steps SAP
4.
Définition du port logique
Démarrage de la transaction Ipconfig
Remplissez les champs comme suit :
Classe de proxy : /UC4/CO_UC4PORT_TYPE
Port logique : UC4
Définissez l'option "Port par défaut".
Le bouton "Nouveau" permet de créer le port logique.
Ensuite, d'autres paramètres s'affichent. Ils doivent être définis comme suit :
Configurations générales :
Onglet Exécution : Web Service Infrastructure
Onglet "Paramètre d'appel" : HTTP Destination
Nom de la destination RFC établie (voir "Etablissement de la connexion RFC HTTP")
Suffixe du chemin : /uc4ws/uc4ws
Automation Engine
285
Configurations propres à l'application :
Désactivez toutes les options dans l'onglet "Configurations globales".
Enregistrez puis activez le port logique.
5.
Enregistrement du rapport ABAP pour Closing Cockpit
Exécutez la transaction SM30 et ouvrez le tableau SCMAPROGRAMS pour effectuer des modifications
(bouton "Modifier"). Il faut ensuite ajouter une entrée avec les valeurs suivantes :
Colonne
Valeur
Programme
/UC4/CC_
REPORT
Application
CUSTOMER
Enregistrez la nouvelle entrée.
6.
Test de la connexion
286
Chapter 7 Analyse du code retour d'application des steps SAP
Pour tester la connexion d'ABAP au système UC4, le programme UC4/CC_REPORT doit être démarré au
moyen de la transaction SE38.
Rubriques connexes :
Services Web UC4.Internal
Activation d'objets UC4 avec SAP Closing Cockpit
L'intégration permet d'activer des objets UC4 exécutables via des Tâches dans SAP Financial Closing
Cockpit. Vous trouverez l'installation à ce sujet au chapitre Installation de l'intégration de SAP Financial
Closing Cockpit. Ce document explique plus précisément le fonctionnement et l'utilisation.
Une fois le service Web UC4.Internal et l'intégration de Closing Cockpit installés, des objets UC4
exécutables peuvent être attribués aux modèles dans Closing Cockpit. Vous trouverez dans la description
ci-dessous les étapes nécessaires et le comportement à adopter lors de l'exécution.
Configuration
Identifiez-vous dans le système SAP et exécutez la transaction CLOCOC. Ouvrez un modèle (Modifier) et
sélectionnez ensuite à l'emplacement de votre choix de la structure organisationnelle la commande
"Ajouter Tâche" via le menu contextuel. Définissez toutes les valeurs nécessaires dans le dialogue qui
s'affiche. Pour l'option "Type de Tâche", sélectionnez "Programme" et entrez dans le champ associé
/UC4/CC_REPORT. Il faut ensuite sélectionner ou recréer une variante associée.
La variante enregistre le nom de l'objet UC4 à exécuter. Les champs restants sont facultatifs et sont
transférés à l'objet activé en tant que valeurs supplémentaires via le tampon de lecture.
Automation Engine
Si l'assistant de saisie (F4) est appelé pour le champ "Nom d'un objet UC4", tous les objets UC4
exécutables du Client qui a été indiqué dans Connexion RFC s'affichent. Le nom, le type, le titre et le
chemin des objets s'affichent.
287
288
Chapter 7 Analyse du code retour d'application des steps SAP
Les champs supplémentaires dans le dialogue Variante servent à transférer les valeurs supplémentaires à
l'objet UC4 activé. Vous trouverez dans la liste suivante les noms des Variables de Script qui sont mises à
la disposition de l'objet UC4 dans le cache :
Paramètre / champ
Nom de la Variable de Script UC4
Périmètre de résultat
KOKRS
Période
PERIO
Année fiscale
AFISCALE
Les "Paramètres supplémentaires" permettent d'inscrire des valeurs autodéfinies dans le tampon de
lecture. La colonne "Variable UC4" permet de déterminer le nom de la Variable de tampon de lecture.
Les valeurs de ces Variables de Script peuvent être lues dans le Script à l'aide de l'élément de script
:READ.
Exemple :
:READ&KOKRS#,,'KOKRS',
Enregistrez ensuite la variante et la Tâche. Créez un plan de Tâches à partir du modèle.
Automation Engine
289
Exécution
La transaction CLOCO permet d'exécuter des plans de Tâches de Closing Cockpit. Ouvrez un plan de
Tâches contenant des Tâches qui activent des objets UC4. Planifiez ces Tâches et contrôlez leur statut.
Si la Tâche a été exécutée et que le statut dans SAP affiche "Terminé", la Tâche s'est terminée dans le
système UC4 avec le statut ENDED_OK. Tout autre statut UC4 entraîne l'affichage du message "Erreur"
dans Closing Cockpit.
Pour afficher le rapport du Job UC4, ouvrez le Spool de la Tâche dans Closing Cockpit. Le Spool contient
tous les types de rapport UC4 (ACT, REP, LOG,...) ainsi que les RunID de la Tâche UC4 exécutée.
Dans la configuration de Closing Cockpit (CLOCOC), des dépendances peuvent aussi être définies pour
les Tâches qui démarrent des programmes ou des transactions. Pour cela, il faut ouvrir un modèle ou un
plan de Tâches et appeler la vue "Dépendances". Les Tâches peuvent être ajoutées dans la zone de
dépendances par glisser-déposer. Cette fonction est aussi prise en charge pour les Tâches qui exécutent
des objets UC4. Les dépendances permettent de déterminer qu'une Tâche ne doit démarrer qu'après la fin
d'une Tâche spécifique.
Rubriques connexes :
Intégration d'UC4 dans SAP Closing Cockpit
7.11.3 Solutions personnalisées
Archivage des données dans SAP
L'archivage des données dans le système SAP sert à supprimer de la base de données les données de
masse n'étant plus nécessaires dans le système, mais devant toutefois être conservées pour être
exploitables. Vous pouvez, bien entendu, contrôler l'archivage des données de façon centrale avec
UC4.
Les données à archiver sont rassemblées au sein d'"objets d'archivage" (par ex. l'objet d'archivage SD_
VBAK comporte toutes les données relatives aux documents de vente). Les cycles d'archivage sont
intégrés au ADK (Archive Development Kit). L'ADK représente la base technique de la transaction
d'archivage (SARA).
Pour chaque objet d'archivage, il existe en règle générale un programme qui marque les données à archiver
sur la base de durées de résidence réglables. Dans de nombreux cas, l'utilisation des indicateurs
s'effectue en 2 étapes : un repère de suppression est défini après écoulement de la durée de résidence 1
(par ex. 6 mois), puis remplacé par un indicateur de suppression après écoulement de la durée de
résidence 2. L'objet devient alors archivable.
290
Chapter 7 Analyse du code retour d'application des steps SAP
Le processus d'archivage se compose en fait de quatre étapes :
1. Cycle préparatoire (indicateur de suppression) :
le cycle préparatoire marque les données à archiver. Le cycle préparatoire peut également être
exécuté indépendamment du cycle d'archivage.
2. Création de fichiers d'archive :
lors de l'archivage, les données à archiver sont tout d'abord écrites séquentiellement dans des
fichiers d'archive nouvellement créés.
3. Début du programme de suppression :
sur la base des fichiers d'archive créés, le programme de suppression supprime les données de la
base de données.
4. Stockage des fichiers d'archive :
les fichiers d'archive créés peuvent ensuite être stockés dans un système de stockage ou alors,
par exemple, être enregistrés sur bande magnétique. Le stockage dans le système de stockage
peut être enclenché automatiquement ou manuellement.
Du point de vue de la transaction SARA, l'exécution d'un cycle d'archivage peut se faire manuellement ou
semi-automatiquement (suppression et stockage). UC4 automatise les cycles d'archivage des données
en principe pour toutes les versions de SAP.
Pour une exécution de l'archivage des données hors transaction SARA, il faut toujours tenir compte des
remarques suivantes en ce qui concerne SAP :
l
l
458670 Archivage des données avec un planificateur de Job externe
133707 Archivage des données hors transaction SARA
Contrôle avec UC4
Au niveau technique, les cycles d'archivage SAP, quel que soit l'objet d'archivage, sont toujours organisés
selon les étapes suivantes :
1. Programme d'écriture (WRI)
Le programme d'écriture comprend le cycle préparatoire et la création des fichiers d'archive. Il s'agit
d'un programme normal, pouvant s'exécuter en Tâche d'arrière-plan, paramétré à l'aide d'une seule
variante.
2. Programme de suppression
Le programme d'écriture crée automatiquement pour chaque fichier d'archive un Job de
suppression (DEL), si cela a été défini ainsi dans la personnalisation de l'objet d'archivage
concerné. Le Job DEL contient le programme de suppression.
3. Stockage des fichiers d'archive (STO)
Le programme de suppression crée automatiquement un Job de stockage (STO). Le Job STO
contient le programme de stockage.
4. Post-traitement éventuel (END)
Les Jobs de post-traitement se produisent également automatiquement, mais ne sont cependant
pas disponibles pour tous les objets d'archivage.
Prérequis dans SAP
1. Programme de suppression automatique
Dans la personnalisation de chaque objet d'archivage, il faut définir que le programme de
suppression est démarré automatiquement.
Automation Engine
291
2. Les Jobs DEL, STO et END ne peuvent pas être démarrés automatiquement dans SAP
Pour contrôler les Jobs DEL, STO et END à l'aide d'UC4, il faut éviter que ces derniers ne
démarrent automatiquement dans le système SAP. Pour ce faire, on utilise la fonctionnalité "Job
Interception" à partir de la version 4.6C. Il faut activer celle-ci avec le programme ABAP INITXBP2.
La table de décision pour l'interception de Job doit contenir les noms de Job des Jobs DEL, STO et
END des cycles d'archivage.
Objets UC4
L'ensemble du déroulement est contrôlé à l'aide d'un Workflow. Le Workflow comporte 3 étapes :
1. Début et surveillance du programme d'écriture
La fonction UC4 "Exécuter Programme ABAP" crée le Job WRI dans SAP et le surveille jusqu'à sa
fin.
2. Début et surveillance du Job de suppression
Les Jobs DEL créés par le Job WRI sont démarrés et surveillés à l'aide de la fonction UC4
"Sélectionner et démarrer les Jobs interceptés".
3. Début et surveillance des Jobs de stockage
Les Jobs de stockage créés par le Job DEL sont également démarrés et surveillés à l'aide de la
fonction UC4 "Sélectionner et démarrer les Jobs interceptés".
Déroulement
1. Activation du Workflow
L'Utilisateur peut également consulter le nom de l'objet d'archivage à l'aide d'un masque :READ.
2. Moniteur de Workflows
Après sélection ou indication de l'objet d'archivage, le Workflow est automatiquement démarré et
292
Chapter 7 Analyse du code retour d'application des steps SAP
affiché sur le moniteur. Il ne s'arrête que lorsque toutes les étapes du traitement se sont bien
terminées.
3. Surveillance et contrôle
L'ensemble du déroulement peut être suivi au sein d'UC4, mais également de SAP. Tous les
protocoles pour l'analyse automatique sont disponibles dans UC4. Il est également possible de
déterminer l'objet d'archivage utilisé pour le déroulement dans la fonction de gestion à partir du côté
SAP (transaction SARA).
Récapitulatif
L'archivage des données SAP est facile à réaliser avec la fonctionnalité standard d'UC4. Avec une mise
en œuvre restreinte, une telle méthode offre une série d'avantages :
l
l
l
l
l
l
Automatisation continue
Le contrôle de l'archivage de données par la plate-forme UC4 Automation permet l'automatisation
continue de l'ensemble du système de gestion SAP. Nul besoin d'interventions manuelles. Les
dépendances mutuelles aux autres processus sont faciles à mettre en œuvre.
Economies
L'archivage régulier des données permet d'assurer des dimensions de base de données optimales,
améliore la performance tout en économisant de l'espace. Contrôlé centralement et exécuté
automatiquement, cet avantage peut être obtenu sans frais supplémentaires, grâce à UC4.
Exploitation optimale des ressources
En raison de contrôles centraux et automatisés, les ressources disponibles peuvent être utilisées
de manière optimale. Les conflits et les goulots d'étranglement sont ainsi évités. Un
fonctionnement sans encombre de SAP est assuré.
Haute fiabilité
L'automatisation de tous les paramètres système réduit nettement le nombre de sources
potentielles d'erreur.
Décharge du personnel
Les spécialistes SAP sont libérés des Tâches manuelles contraignantes. Ils peuvent ainsi
concentrer leurs compétences sur les domaines les plus importants : l'amélioration des systèmes
et des niveaux de service.
Contrôle et surveillance centralisés
Tous les processus du système SAP sont surveillés et contrôlés de manière centralisée. Les
problèmes potentiels sont reconnus immédiatement, la durée jusqu'à la correction d'erreurs est
réduite au minimum absolu.
Traitements en masse
IS-U est la solution sectorielle de SAP pour le secteur de l'approvisionnement.
IS-U, en tant que système de facturation pour les sociétés d'approvisionnement et de prestation de
services en particulier est personnalisé par rapport aux exigences des activités d'approvisionnement.
Grâce à l'intégration d'IS-U aux composants neutres de la norme R/3 et grâce à des interfaces vers des
systèmes externes, SAP offre aux sociétés d'approvisionnement une solution globale, intégrée et
d'entreprise pour le traitement des informations commerciales.
Le volume des transactions des entreprises d'approvisionnement, avec leurs millions de Clients, différents
types d'approvisionnement et éventuellement une facturation mensuelle, est traité, pour sa plus grande
part, dans des tâches d'arrière-plan.
En voici des exemples :
Automation Engine
l
l
l
l
l
l
293
Création de documents de lecture
Contraintes de remise
règlement/facturation
Cycle de relance
Cycle de paiement
etc.
Définition
UC4 est capable d'automatiser ces exigences d'arrière-plan. Pour réussir le traitement de ces gros
volumes de données avec un débit le plus optimal possible, un "traitement en masse" spécial a été
développé pour le traitement d'arrière-plan.
Les caractéristiques de ce traitement en masse sont les suivantes
l
l
un nombre dynamique de Jobs fractionnés naît d'un Job maître
Chaque cycle de traitement en masse nécessite un jeu de paramètres, identifié par la date et l'ID de
cycle
Une des exigences particulières du traitement en masse est également le respect d'un certain ordre, par
exemple "Règlement" doit se dérouler avec "Facturation", les deux étant un traitement en masse.
Technique
Le traitement en masse comprend un répartiteur qui génère avec l'aide de la définition des paramètres des
Jobs fractionnés parallèles.
Le répartiteur est lui-même défini dans le traitement d'arrière-plan comme "Job maître" lors de
l'ordonnancement du traitement en masse. Si le Job maître est exécuté, il crée un certain nombre
dynamique de Jobs fractionnés. Le nombre de Jobs fractionnés dépend des paramètres définis.
Le contrôle se fait avec UC4. L'ordonnancement peut également être effectué dans UC4 ou dans SAP.
Copie de Client dans SAP R/3
SAP R/3, tout comme la plate-forme UC4 Automation, est une application orientée Client. Chacun des
Clients est une unité entièrement indépendante. Dans plusieurs cas, un échange de données régulier
entre les Clients est nécessaire. UC4 permet d'automatiser ces processus.
Le "Client" est le terme de classement le plus élevé pour les applications R/3. Les définitions au niveau
des Clients sont valides dans toutes les structures de l'organisation de l'entreprise sous R/3. Le Client est
une unité indépendante au niveau de la gestion des données, au niveau de la gestion de l'entreprise et au
niveau de l'organisation.
Dans la pratique, ce concept de Client peut, par exemple, être utilisé pour l
l
héberger dans un centre de calcul de nombreux Clients sur un système R/3 configurer sur un système R/3 plusieurs Clients avec diverses Tâches, par exemple :
l
Client de livraison SAP (Client 000)
l
Client de personnalisation (001)
l
Client test l
Client d'assurance qualité l
Client de production
294
Chapter 7 Analyse du code retour d'application des steps SAP
Dans un tel environnement, il est souvent nécessaire de fournir à un Client d'assurance qualité ou à un
Client test des données cohérentes. Vous obtiendrez au mieux ces données en copiant le Client de
production. Pour un environnement de test réaliste, des copies de Client doivent être créées
régulièrement.
Copie de Client dans SAP R/3
La copie de Clients dans SAP R/3 comporte une série de problèmes. En particulier, des copies régulières
pour fournir des données actuelles aux systèmes de test sont synonymes d'une certaine quantité de
travail.
SAP prend en charge la copie en ligne ou le transport des Clients. Etant donné qu'il s'agit ici de
transactions, ces méthodes ne sont adaptées qu'à une exécution périodique (SAP version 4.0 à 4.6D).
Le contrôle d'arrière-plan de SAP ne peut pas non plus exécuter régulièrement de telles transactions, car
des variantes dynamiques sont utilisées.
Exposé du problème
Lors de la copie d'un Client, de grandes quantités de données sont déplacées. Un Client sans données
d'application nécessite environ 500 Mo de mémoire dans la base de données. La copie peut donc durer
plusieurs heures. Pendant ce temps, un ou plusieurs processus de dialogue sont occupés.
Aucun Utilisateur ne doit travailler dans le Client source ou cible pendant le processus de copie. Les
Utilisateurs d'autres Clients utilisent des ressources supplémentaires et rallongent le processus de copie.
Avant la copie d'un Client, un cycle de test doit être exécuté. Cela permet de déterminer les tables qui
doivent être modifiées. En outre, le système vérifie si la base de données dispose d'un espace mémoire
suffisant.
Avant la copie d'un Client, le Client cible est souvent supprimé. Tous les Groupes Utilisateurs sont alors
également supprimés. Seul l'Utilisateur SAP* peut encore s'identifier dans le Client cible.
Copie de Client dans R/3 avec UC4
Des copies périodiques des Clients peuvent être effectuées plus facilement et de façon plus sécuritaire
avec UC4. Les cycles de test et le processus de copie peuvent être exécutés automatiquement.
L'exécution normale est ininterrompue.
Le processus de copie est démarré en fonction des résultats du cycle de test et de la disponibilité des
ressources. Si des erreurs se déclarent au cours du traitement, UC4 informe immédiatement le personnel
de garde responsable. Pour que UC4 puisse créer des copies de Client, il faut que les prérequis suivants
soient remplis dans le système SAP :
l
l
Les Groupes Utilisateurs ne doivent pas être supprimés avant la copie.
UC4 utilise un compte utilisateur normal pour l'identification à SAP étant donné qu'il ne peut
s'identifier avec l'utilisateur SAP*. SAP offre la possibilité de ne pas supprimer le Client cible avant
la copie. Il est également possible de supprimer les grandes tables à l'aide d'ABAP spéciaux (voir
également SAP Service Marketplace, conseil numéro 365304).
Le rapport RSCLXCOP doit être modifié, afin de pouvoir traiter les variantes du rapport.
Un Job de copie de Client obtient les informations nécessaires d'une variante. Lors de l'exécution
d'une copie de Client, celle-ci est remplacée par les données issues du Client source, ou alors elle
est supprimée. Lors d'une exportation de Client, le numéro de la copie se trouvant dans la variante
est entré pour de bon. Cela provoque des problèmes pour les ordonnancements périodiques. C'est
Automation Engine
295
pourquoi des variantes identiques (du même nom) doivent être créées dans le Client source et cible
pour le rapport RSCLXCOP. La procédure exacte est détaillée dans le conseil numéro 303007 de
SAP Service Marketplace.
Une fois ces prérequis remplis, il est possible de créer dans UC4 un Job pour l'exécution d'une copie de
Client. Cela permet de représenter des dépendances au sein d'un Workflow. Le cycle de test ainsi que le
processus de copie peuvent être exécutés automatiquement. UC4 s'assure que des ressources
suffisantes soient disponibles. Des copies régulières des Clients peuvent ainsi être effectuées bien plus
facilement et de façon bien plus sécuritaire.
Dialogue SAP pour UC4
Dialogue SAP pour UC4 est une interface pour les Utilisateurs de SAP R/3 à partir de laquelle vous
pouvez déclencher des traitements dans le système UC4. Les Tâches définissables dans SAP sont
transmises au système UC4 avec CallAPI pour SAP.
La transaction "/sbb/uc4dc" affiche l'interface de l'Utilisateur final qui contient la vue des Tâches. Ainsi,
seules les Tâches auxquelles il est autorisé à accéder sont proposées à l'Utilisateur. Elles peuvent être
divisées en classes et portent un nom évocateur. Pour en sélectionner une, il suffit de cliquer dans la liste.
Ensuite, en fonction de la définition, l'interrogation des Variables ou des attributs, ou la maintenance d'une
variante. Chaque activation de Tâche est enregistrée dans les statistiques.
l
Activation avec saisie d'attributs définissables librement
Les attributs sont définissables librement et sont transmis à UC4 via :PUT_READ_BUFFER.
l
Connexion directe à la maintenance des variantes par défaut
L'utilisation d'ABAP standard via UC4 permet d'avoir une connexion directe à la maintenance des
variantes. Seule la variante prédéfinie peut être maintenue.
l
Création de Workflows
Il est possible de créer un Workflow à l'aide des Variables. Vous pouvez ainsi, par exemple,
sélectionner les composants devant être exécutés à partir d'un déroulement prédéfini. La
communication vers le Workflow au sein de UC4 se fait uniquement par la définition de Variables.
l
Statistiques et suivi du statut
296
Chapter 7 Analyse du code retour d'application des steps SAP
L'Utilisateur dispose de statistiques permettant de comprendre toutes les activations. En outre, une
Tâche peut, par exemple, être interrompue précisément ou un statut actuel peut être synchronisé.
Le dialogue SAP pour UC4 ne remplace pas l'Interface Utilisateur à tous les niveaux. Il aide les
Utilisateurs qui utilisent uniquement l'interface utilisateur SAP et qui souhaitent contrôler à l'aide de UC4
ses Tâches d'arrière-plan (Jobs, Workflows) à partir de SAP.
Le dialogue SAP pour UC4 est une solution de consultant et ne fait pas partie du produit ! Il ne bénéficie
donc pas d'une maintenance !
Automated SystemCopy for SAP
Cette solution UC4 vous permet d'exécuter une copie du système SAP de manière entièrement
automatisée. Le procédé peut être adapté à votre convenance et vous pouvez déterminer exactement
quelles étapes doivent être réalisées.
UC4 Automated SystemCopy for SAP est une solution de consultant et ne reçoit donc aucune
maintenance ! La documentation relative à cette solution est disponible sous forme de document externe.
7.11.4 Liaison technique
UC4 et SAP
La connexion entre UC4 et SAP est établie via un Agent. Dans son fichier INI se trouve les données de
connexion à un système UC4 déterminé. Les données de connexion à un système SAP sont
consignées dans des objets Connexion. L'Agent a besoin d'au moins un objet Connexion dans lequel
l'Utilisateur CPIC est entré avec ses données de connexion.
Un Job UC4 requiert la spécification d'un Agent et d'un objet Login. Dans les informations de connexion,
vous définissez dans quel Client SAP le Job sera exécuté.
Lors de la création d'un Job UC4, l'onglet "Forme" est utile. Il offre une interface graphique dans laquelle
les lignes de script peuvent être créées aisément. En outre, certaines données peuvent être fournies par le
système SAP (par exemple : variantes disponibles). L'Agent SAP établit la connexion requise au système
SAP. Les nom d'utilisateur, mot de passe et Client sont repris depuis l'objet Connexion pour
"ABAP Basis"
Rubriques connexes :
Onglet Forme
Plusieurs systèmes SAP
Cette description montre de quelle façon est réalisée la configuration lors de l'utilisation de plusieurs
Agents SAP exécutés sur différents systèmes SAP.
Agents SAP supplémentaires
1.
Renseignez le fichier de définition du ServiceManager UC4.SMD.
Entrez les autres Agents dans le fichier de définition du ServiceManager en fonction de l'exemple suivant.
La chaîne *OWN est automatiquement remplacée par le chemin dans lequel le ServiceManager se trouve
(ucybsmgr.exe).
Automation Engine
297
! Les lignes de commentaires commencent par un point d'exclamation
!
! Les sous-services sont maintenant définis
!DEFINE UC4 Automation Engine;*OWN\UCServer.exe;*OWN
DEFINE UC4 C11-Agent;*OWN\C11\UCXJR3X.exe -i*OWN\UCXJC11.INI;*OWN
DEFINE UC4 XYZ-Agent;c:\uc4global\bin\XYZ\UCXJRX3.exe ic:\uc4global\bin\XYZ\UCXJXYZ.INI;*OWN\XYZ
Ces entrées peuvent également être dupliquées et adaptées avec le dialogue du ServiceManager dans le
fichier UC4.SMD.
2.
Créer les fichiers *.INI.
Créez, pour chaque nouvel Agent entré, un fichier UCXJ*.INI du nom convenu dans UC4.SMD.
Idéalement, copiez le fichier d'un Agent existant (par exemple UCXJR3X.INI vers UCXJC11.INI).
Renseignez ou vérifiez UCXJ*.INI dans les fichiers créés.
3.
Renseigner SAPRFC.INI (uniquement lors de l'utilisation de SAPRFC.INI)
Complétez plusieurs chapitres de SAPRFC.INI (anciennement SIDEINFO) comme ils sont indiqués dans
les fichiers UCXJ*.INI, en fonction de l'exemple suivant :
DEST=UC_C11
LU=R33
TP=sapdp00
GWHOST=R33
GWSERV=sapgw00
PROTOCOL=I
DEST=UC_XYZ
LU=R33
TP=sapdp01
GWHOST=R33
GWSERV=sapgw01
PROTOCOL=I
4.
Terminer et démarrer le ServiceManager.
Terminez le ServiceManager et redémarrez-le. Ensuite, les autres Agents devraient être disponibles.
N'oubliez pas de créer l'Utilisateur pour RFCLOGIN dans le système SAP correspondant !
Objets SAP Security
Les autorisations requises pour les Jobs UC4 dépendent de l'installation et des fonctions utilisées dans
UC4. Dans le présent document sont mentionnés tous les objets d'autorisation dont a besoin
l'Utilisateur CPIC pour une utilisation complète de toutes les fonctionnalités.
Le tableau suivant part du principe que vous connaissez bien le concept d'autorisation de SAP.
Objet d'autorisation
Connexion à UC4
Nom du champ
Valeur
298
Chapter 7 Analyse du code retour d'application des steps SAP
S_RFC
Lorsque vous définissez le
paramètre de profil auth/rfc_
authority_check, SAP vérifie
si l'Utilisateur RFC dispose de
l'autorisation d'exécuter le
groupe de fonction.
ACTVT RFC_
NAME RFC_
TYPE
*
*
*
S_BTCH_JOB
Traitement de batch :
Opérations sur les
Jobs de batch
UC4 crée des Jobs SAP
dynamiquement et nécessite
donc l'autorisation de planifier
des Jobs, de les surveiller et
de les libérer. UC4 crée, en
outre, des Jobs en utilisant le
programme ABAP standard
RSBDCBTC pour exécuter
des sessions BDC.
JOBACTION
JOBGROUP
*
*
S_BTCH_ADM
Traitement de batch :
Administrateur de
batch :
Pour que les Jobs SAP
existants puissent être
exécutés, UC4 doit adapter
les Jobs correspondants. Les
interfaces UC4 et standard
utilisent le module fonctionnel
standard BP_JOB_MODIFY
pour exécuter les Jobs et
nécessitent donc l'autorisation
administrateur de batch. Cette
dernière est également
nécessaire pour afficher la
liste spool d'un Job si celui-ci
n'a pas été créé par
l'Utilisateur CPIC.
BTCADMIN
Y
BTCUNAME
*
S_BTCH_ADM permet des
sélections indépendantes du
Client dans les Jobs existants.
L'exécution de l'instruction
UC4 R3_ACTIVATE_JOBS
avec un Utilisateur CPIC
possédant cette autorisation,
peut, en fonction des critères
de filtrage, mener au
démarrage de Jobs dans
plusieurs Clients SAP (par
exemple, le même nom de Job
existe dans deux Clients
SAP).
S_BTCH_NAM
L'Utilisateur CPIC doit
disposer de cette autorisation
pour créer et exécuter des
Jobs pour d'autres Utilisateurs
SAP.
Automation Engine
S_SPO_DEV
Spooler : autorisations
de périphérique
Pour pouvoir spécifier le
paramètre d'impression
"Impression Immédiate" au
sein d'un step de Job,
l'Utilisateur CPIP nécessite
l'autorisation pour le
périphérique de sortie en
question.
SPODEVICE
*
S_TMS_ACT
Pour que la page de garde
d'une liste spool puisse être
transmise à UC4, il est utile
d'afficher le paramètre de la
variante qui a été utilisée pour
l'exécution ABAP. Cette
information fait partie de la
page de garde.
STMSACTION
STMSOBJECT
STMSOWNER
*
*
*
S_XMI_PROD
Cet objet d'autorisation est
utilisé pour l'identification à
l'interface standard. Les
applications externes doivent
tout d'abord s'y identifier pour
pouvoir faire appel à ses
fonctions.
EXTCOMPANY
EXTPRODUCT
INTERFACE
*
*
*
S_XMI_LOG
L'objet d'autorisation n'est pas requis pour UC4. Lors de
l'utilisation de l'interface
standard, des entrées sont
toutefois écrites dans le log
XML (Online Transaction Code
RZ15), qu'il n'est possible
d'afficher ou de supprimer
qu'avec cette autorisation.
-
S_WFAR_OBJ
ArchiveLink :
autorisations pour
l'accès aux documents
UC4 permet de spécifier des
paramètres d'archivage (type
d'objet, type de document).
Grâce à ceux-ci, vous pouvez
transférer immédiatement la
liste d'impression d'un
programme ABAP à une
archive optique (si cela est
installé dans le système SAP).
ACTVT
OAARCHIV
OADOCUMENT
OAOBJEKTE
*
*
*
*
S_WFAR_PRI
ArchiveLink :
autorisations pour
l'accès aux listes
d'impression
Pour que les listes
d'impression puissent être
créées dans les archives
optiques, l'Utilisateur CPIC
doit posséder cette
autorisation.
ACTVT
OAARCHIV
OADOKUMENT
OAOBJEKTE
PROGRAM
*
*
*
*
*
299
300
Chapter 7 Analyse du code retour d'application des steps SAP
S_PROGRAM
ABAP : Vérifications
du déroulement du
programme
UC4 requiert cette autorisation P_ACTION
pour planifier des programmes P_GROUP
ABAP auxquels des groupes
d'autorisation sont attribués
(champ d'autorisation P_
ACTION=BTCSUBMIT) et
pour contrôler les variantes
(P_ACTION=VARIANT).
BTCSUBMIT,VARIANT
*
S_SPO_ACT
Spool : Actions
Le champ SPOACTION doit
autoriser les actions BASE et
DISP pour les Utilisateurs
correspondants pour que les
listes spool qui n'ont pas été
créées par l'Utilisateur CPIC
puissent être transmises.
BASE,DISP
*
S_ADMI_FCD
Autorisations système
Le champ S_ADMI_FCD doit
S_ADMI_FCD
au moins autoriser l'action
SP0R pour que les listes spool
qui n'ont pas été créées par
l'Utilisateur CPIC puissent
être transmises.
SP0R
S_RS_ISOUR
Administrator
Workbench InfoSource (mise à jour
flexible)
L'autorisation est uniquement
requise si la fonction Business
Warehouse BW_ACTIVATE_
INFOPACKAGE est utilisée et
si la mise à jour flexible est
appliquée.
ACTVT
RSAPPLNM
RSISOURCE
RSISRCOBJ
*
*
*
*
S_RS_ISOUR
Administrator
Workbench InfoSource (mise à jour
directe)
L'autorisation est uniquement
requise si la fonction Business
Warehouse BW_ACTIVATE_
INFOPACKAGE est utilisée et
si la mise à jour directe est
appliquée.
ACTVT
RSAPPLNM
RSISOURCE
RSISRCOBJ
*
*
*
*
S_DEVELOP ABAP
Workbench
L'autorisation est uniquement
requise si la fonction Business
Warehouse BW_ACTIVATE_
CHAIN est utilisée.
ACTVT
DEVCLASS
OBJNAME
OBJTYPE P_
GROUP
*
*
*
*
*
S_RS_ICUBE
Administrator
Workbench - InfoCube
L'autorisation est uniquement
requise si la fonction Business
Warehouse BW_ACTIVATE_
CHAIN est utilisée.
ACTVT
RSICUBEOBJ
RSINFOAREA
RSINFOCUBE
*
*
*
*
S_RS_ADMWB
Administrator
Workbench - Objets
L'autorisation est uniquement
requise si les fonctions
Business Warehouse sont
utilisées.
ACTVT
RSADMWBOBJ
*
*
S_RS_DS
L'autorisation est uniquement
requise si les fonctions
Business Warehouse sont
utilisées.
SPOACTION
SPOAUTH
Automation Engine
S_RS_DTP
L'autorisation est uniquement
requise si les fonctions
Business Warehouse sont
utilisées.
S_RS_ODSO
L'autorisation est uniquement
requise si les fonctions
Business Warehouse sont
utilisées.
S_RS_PC
L'autorisation est uniquement
requise si les fonctions
Business Warehouse sont
utilisées.
S_RZL_ADM
Lancement de Jobs
interceptés (Gestionnaire de
File d'Attente, R3_activate_
intercepted_Jobs)
ACTVT
01
S_TABU_DIS
Pour l'utilisation des
formulaires SAP
ACTVT
DICBERCLS
03
SPFL
-
Aucune autorisation SAP
spécifique n'est nécessaire
pour les fonctions UC4
supplémentaires comme il
n'existe aucun risque de
sécurité.
301
*) Nous vous recommandons de créer des autorisations en fonction de vos conventions de noms
spécifiques.
Pour disposer de la fonctionnalité minimale dans UC4, l'Utilisateur RFC doit avoir un profil Utilisateur qui
contient l'objet d'autorisation S_BTCH_JOB. Ce dernier doit contenir les autorisations standard S_BTCH_
ALL ou avoir saisi les valeurs suivantes :
Activités sur les Jobs : DELE, PLAN, PROT, RELE, SHOW
Résumé des Jobs pour un Groupe : *
Prise en compte d'attributs de Job
L'onglet spécifique à l'hôte pour les Jobs SAP contient plusieurs attributs ayant une influence sur
plusieurs scripts. Le tableau suivant les énumère. Les scripts SAP n'apparaissant pas dans cette liste
n'utilisent aucun attribut.
Elément de
script
BCA_
ACTIVATE_
PROCESS
R3_ACTIVATE_
EXT_
COMMAND
Logi
n
Langu
e
No
m
de
Job
Class
e de
Job
Systèm
e cible
Mode de
démarrag
e
Supprime Destinatair
r dans
e de la liste
CCMS
spool
302
Chapter 7 Analyse du code retour d'application des steps SAP
R3_ACTIVATE_
EXT_
PROGRAM
R3_ACTIVATE_
INTERCEPTE
D_JOBS
R3_ACTIVATE_
JOBS
R3_ACTIVATE_
REPORT
R3_ACTIVATE_
SESSIONS
R3_CALL_
TRANSACTION
R3_GET_
EVENT
R3_GET_JOB_
SPOOL
R3_MODIFY_
JOB
R3_RAISE_
EVENT
Rubriques connexes :
Onglet SAP pour les Jobs SAP
Interfaces
Interfaces
Les Agents communiquent avec le système SAP sur la base de RFC (Remote Function Call) de SAP.
Pour ce faire, des modules fonctionnels sont exécutés. Parallèlement aux interfaces par défaut, l'Agent
peut utiliser l'interface UC4 qui donne accès à des fonctionnalités supplémentaires.
Nous faisons généralement la distinction dans la documentation entre
l
l
L'interface UC4
est composée de modules de fonctions développés par UC4.
Les interfaces standard
sont composées de modules de fonctions développés par SAP. UC4 utilise plusieurs de ces
interfaces à différentes fins. Les interfaces se répartissent en
l
XMB (eXternal Monitoring Basics)
l
XAL (eXternal ALerting)
l
XBP (eXternal Batch Processing) *)
l
XMW (eXternal Monitoring Write)
l
BW-STA (Business Warehouse - data STAging)
Automation Engine
303
*) Attention : l'interface XBP 2.0 doit être activée avec le programme SAP INITXBP2. Cela fait partie de
l'installation XBP 2.0. Sinon, les relations parent-enfant et la fonction de Jobs interceptés ne peuvent pas
être utilisées.
UC4 Operations Manager prend en charge les interfaces XBP 2.0 et XBP 3.0 de SAP NetWeaver. Des
modules SAP utilisant cette interface peuvent donc être utilisés. En font par exemple partie SAP 4.7,
NetWeaver Stack 2004s, ECC5, ECC6, etc.
La version de l'interface XBP est indépendante de celle du kernel. SAP assure une certaine
compatibilité. Cela signifie que lorsqu'une nouvelle version de l'interface est disponible, un certain nombre
des versions de kernel prennent en charge l'ancienne version.
L'interface UC4 requiert BABP XBP V2.0. Vérifiez la version de votre système UC4 et installez, le cas
échéant, le package de prise en charge actuel.
Différences au niveau des fonctions
Le tableau récapitulatif suivant montre quels Scripts SAP exigent l'interface UC4 (Script). Les Scripts
qui possèdent des paramètres pour lesquels l'utilisation de l'interface UC4 est requise sont également
identifiés (Paramètre).
Scripts et interfaces utilisées
Elément de script
Description
Interface UC4
nécessaire
Elément
de
script
R3_ACTIVATE_
CM_PROFILE
Active un profil dans le Gestionnaire de critères SAP.
R3_ACTIVATE_
EXT_COMMAND
Exécute une commande externe.
R3_ACTIVATE_
EXT_PROGRAM
Exécute un programme externe.
R3_ACTIVATE_
INTERCEPTED_
JOBS
Exécute les Jobs interceptés.
R3_ACTIVATE_
JOBS
Exécute les Jobs déjà planifiés.
R3_ACTIVATE_
REPORT
Exécute un programme ABAP.
R3_ACTIVATE_
SESSIONS
Exécute des dossiers batch input.
R3_CALL_
TRANSACTION
Exécute une transaction SAP.
R3_COPY_
VARIANT
Copie la variante d'un rapport.
Paramètres
304
Chapter 7 Analyse du code retour d'application des steps SAP
R3_CREATE_
OUTPUT_
REQUEST
Crée un nouvel ordre d'édition pour une requête spool
existante.
R3_CREATE_
VARIANT
Crée une nouvelle variante.
R3_DEACTIVATE_
CM_PROFILE
Désactive un profil dans le Gestionnaire de critères
SAP.
R3_DELETE_
NODE
Supprime un nœud de l'architecture de moniteur SAP.
R3_DELETE_
VARIANT
Supprime la variante d'un rapport.
R3_GET_
APPLICATIONLOG
Vérifie le code retour d'application d'une ou de plusieurs
étapes de Job.
R3_GET_
APPLICATIONLOG
Cherche les messages du logging d'application et les
génère dans le rapport ou le fichier.
R3_GET_EVENT
Attend un Evènement déclenché dans SAP.
R3_GET_
INTERCEPTION
Lit la table de filtre pour les Jobs interceptés et
enregistre dans le protocole d'activation ou un fichier.
R3_GET_JOB_
SPOOL
Lit la liste spool d'un step de type "programme ABAP".
R3_GET_JOBLOG
Cherche le logging d'un Job SAP dans SAP et l'affiche
dans un rapport.
R3_GET_JOBS
Sélectionne des Jobs SAP et affiche le résultat dans le
rapport d'activation.
R3_GET_
MONITOR
Lit des données d'un moniteur SAP.
R3_GET_
SESSIONS
Sélectionne des dossiers batch input et affiche le
résultat dans le rapport d'activation ou dans un fichier.
R3_GET_
Sélectionne des requêtes spool avec des Filtres
SPOOLREQUESTS prédéfinis.
R3_GET_
SYSTEMLOG
Lit les informations d'une période donnée d'un logging
système SAP.
R3_GET_
VARIANTS
Lit le catalogue des variantes.
R3_GET_
VARIANT_
CONTENTS
Affiche le contenu d'une variante.
R3_MODIFY_
INTERCEPTION
Modifie la table de filtre pour les Jobs interceptés.
R3_MODIFY_JOB
Modifie un step ABAP.
R3_MODIFY_
VARIANT
Modifie une valeur dans une variante.
R3_RAISE_EVENT
Déclenche un Evènement défini dans SAP.
Automation Engine
R3_SCHEDULE_
JOB_CANCEL
Réattribue le statut "Planifié" à un Job SAP déjà lancé.
R3_SEND_
SPOOL_REQUEST
Envoie une requête spool existante.
R3_SET_
BDCDATA
Définit les données BDC.
R3_SET_FREE_
SELECTION
Définit une limite libre.
R3_SET_LOG_
ATTR
Ajoute un attribut de logging dans l'architecture de
moniteur SAP
R3_SET_PERF_
ATTR
Ajoute un attribut de performance dans l'architecture de
moniteur 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.
R3_SET_SELECT_
OPTION
Définit un critère de sélection.
R3_SET_STATUS_
ATTR
Ajoute un attribut de statut dans l'architecture de
moniteur SAP
R3_SET_TEXT_
ATTR
Ajoute un attribut de texte dans l'architecture de
moniteur SAP
R3_SWITCH_
OPMODE
Change le mode de fonctionnement dans SAP.
305
Rubriques connexes :
Généralités sur le JCL UC4 pour les applications
Transport de l'interface UC4
Généralités
Pour utiliser les fonctionnalités de l'interface UC4, les modules fonctionnels doivent d'abord être
transportés dans le système SAP.
Ils sont développés sous forme d'objets de développement ABAP. Ces objets sont fournis dans le
package "correction et transport" du système SAP:
l
l
l
KNNNNNN.SID Fichier d'information, par exemple K000046.T45
RNNNNNN.SID Fichier de données, par exemple R000046.T45
ENNNNNN.txt Protocole d'exportation, par exemple E000046.txt
Outre les modules fonctionnels, des espaces de noms sont également transportés dans des ordres
individuels. Vous trouverez une liste des ordres de transport en cours de validité dans le fichier
TRANSPRT.TXT. En cas de nouvelle installation, tous les ordres de transport doivent être exécutés. En
cas de mise à jour de l'installation, seuls les modules fonctionnels (interface UC4) sont mis à jour, car les
espaces de noms ne changent pas.
Les noms des objets de développement sont décrits dans la terminologie.
306
Chapter 7 Analyse du code retour d'application des steps SAP
Les abréviations suivantes sont utilisées dans ce document:
l
l
l
NNNNNN pour le numéro d'ordre de transport du système source et
SID pour le nom du système source.
TID est utilisé pour le nom du système cible (dans lequel les modules fonctionnels sont importés).
Nom du fichier
Dans la mesure où le système SAP peut être installé dans différents environnements (UNIX, Windows...),
les particularités du système doivent être prises en compte dans les noms des fichiers.
Dans ce document, nous écrivons généralement des noms de fichiers, qui concernent l'environnement
SAP, avec la syntaxe UNIX (également avec "/"). Dans l'environnement Windows, les noms sont
identiques, à la différence seulement que dans ce cas, on utilise "\".
Importation des modules fonctionnels dans SAP
Pour utiliser les fonctionnalités de l'interface UC4, les modules fonctionnels doivent d'abord être
transportés dans le système SAP.
Requis :
Les autres activités du système de transport doivent impérativement être exécutées avec l'Utilisateur
d'administration SAP (SIDadm).
Le système de transport doit être configuré et paramétré correctement, généralement lors de l'installation
du système SAP.
Au moins deux processus de travail de batch (BTC) doivent fonctionner dans cette instance SAP pour
l'importation
Contrôle: Outils – Administration – Moniteur – Surveillance système – Sélection de processus (transaction
SM50).
Le démon de transport du système SAP (Job d'arrière-plan "RDDIMPDP") doit être planifié et validé dans
le Client 000 pour l'importation d'objets de développement. Contrôle: Voir ci-dessous
La fonctionnalité peut être vérifiée comme suit:cd usr/sap/trans/bin........
dans le répertoire de transport SAP
tp checkimpdp TID...........
Vérifier si le démon de transport RDDIMDP est actif dans SAP
tp connect TID.............. Tester la connexion au système SAP
Changement
Le système de transport est décrit dans la documentation SAP en ligne, dans le chapitre SYSTEME DE
BASE – PILOTAGE DU CONTROLE.
Veuillez noter que l'option "Ignorer les versions des composants" inadaptées doit être activée lors de
l'importation.
Déroulement:
Reprise du fichier de transport fourni dans l'environnement de transport SAP:
l
l
l
Sur l'ordinateur SAP:
Accédez au sous-répertoire adapté à la version SAP sous CD:AGENTS\SAP\_TRANS.
Copie des fichiers dans les répertoires suivants:
KNNNNNN.SID par /usr/sap/trans/cofiles
RNNNNNN.SID par /usr/sap/trans/data
Automation Engine
307
Lorsque SAP est installé sous UNIX, le transfert des fichiers s'effectue généralement via FTP.
Indiquez impérativement "bin" pour les transferts binaires.
l
Le fichier ENNNNNN.TXT du CD contient le protocole d'exportation complet et peut être utilisé
pour une éventuelle analyse.
Importation de la livraison dans le système SAP:
l
l
l
Sur l'ordinateur SAP (connexion avec l'Utilisateur d'administration SAP (SIDadm)).
Les fichiers de transport repris (RNNNNNN.SID et KNNNNNN.SID) ne doivent pas être
protégés en écriture (attention lors de la copie à partir du CD)!
Si besoin, il est possible de créer un répertoire des objets contenus dans l'ordre de transport:
cd usr/sap/trans/data....... Changement dans le répertoire de transport SAP
r3trans -l RNNNNNN.SID...... Crée un fichier trans.log (liste des objets transportés)
l
Génération d'une entrée de tampon pour le système cible.
cd usr/sap/trans/bin........ Changement dans le répertoire de transport SAP
tp addtobuffer SIDkNNNNNN TID[pf=<nom profil, par défaut TPPARAM>]
l
Si besoin, il est possible de vérifier l'entrée de tampon:
tp showbuffer TID [pf=<nom profil, par défaut TPPARAM>]
l
l
Vous devez décider avant l'importation avec quels modes inconditionnels (u) l'importation doit être
exécutée:
l
4....est valable uniquement pour la version SAP 3.x: sachant que le nom du système cible
indiqué lors de l'exportation ne correspond pas au nom du système cible réel (TID). Dans la
mesure où le système cible réel n'est pas connu lors de l'exportation, ce mode doit toujours
être spécifié!
l
1....doit être indiqué lorsque l'importation doit être répétée.
Lancement de l'importation avec la commande:
tp import SIDkNNNNNN TIDu4 [client123] [pf=<nom profil, par défaut TPPARAM>] bzw.
tp import SIDkNNNNNN TID u14 [client123] [pf=<nom profil, par défaut TPPARAM>]
Les modes inconditionnels diffèrent selon la version TP. Vous pouvez consulter la documentation
SAP pour plus d'informations à ce sujet.
l
Respectez les points suivants lors de l'importation:
l
Au moins 2 tâches de batch doivent fonctionner dans l'instance pour les importations!
l
Bien que l'ordre de transport ne contienne aucune donnée propre au Client, il peut arriver
qu'un Client soit requis lors de l'importation. Dans ce cas, un Client valable pour votre
environnement doit être spécifié à l'aide du paramètre client=nnn (l'export a eu lieu avec
le Client 010).
l
L'importation peut prendre quelques minutes, plus particulièrement lorsque le démon de
transport RDDIMPDP n'est pas déclenché par un évènement, mais est contrôlé par une
horloge.
l
Message "no profile used ":
Aucun profil n'est indiqué lors de l'exécution interne du programme sur "sapevt". C'est
pourquoi ce message est généré pour chaque exécution sur sapevt. Il peut être ignoré en
temps normal!
l
D'autres messages peuvent être générés. Cependant, seul le Code retour est important (voir
ci-dessous – Contrôle).
308
Chapter 7 Analyse du code retour d'application des steps SAP
Contrôle:
l
l
En raison de la complexité du système de transport et de l'environnement SAP, seul un expert qui
connaît l'environnement d'installation peut réaliser un diagnostic d'erreur complet et apporter des
corrections.
Un non-spécialiste peut toutefois évaluer si l'importation s'est bien passée à l'aide des conseils
suivants:
l
Des fichiers log sont générés lors de l'importation.
l
Ils se trouvent dans le répertoire /usr/sap/trans/log sous le nom SIDsNNNNNN.TID
l
s correspond à l'étape de transport:
l
l
G... Génération de rapports et d'écran
H... R3TRANS Dictionnaire d'importation
I... R3TRANS Importation principale
Le code exit (= Code retour) de ces trois fichiers log doit être contrôlé (il est toujours indiqué
à la fin du fichier). Il ne doit pas dépasser "4"!
Un expert peut naturellement contrôler ces fichiers log dans le système SAP.
Test de l'interface UC4 avec ABAP Workbench
Ce document contient des explications relatives au test de l'interface UC4 permettant la connexion au
système SAP.
1. Démarrer l'environnement de développement et ouvrir les modules fonctionnels.
Démarrez l'environnement de développement (ABAP/4-Workbench) et ouvrez, à l'aide du navigateur
d'objets, les modules fonctionnels pour les groupes de fonction /SBB/UC4_JOB :
Outils⇒ABAP/4-Workbench⇒Résumé⇒Object Navigator, sélectionnez le groupe de fonctions
/SBB/UC4_JOB, ouvrez les modules fonctions, positionnez le curseur sur l'objet et sélectionnez Tester
dans le menu contextuel.
Le nom des modules fonctionnels a toujours UC4 comme préfixe.
2.
Tester le module fonctionnel UC4_JOB_OPEN.
Paramètre à indiquer :
JOBNAME - Nom quelconque, par exemple 'TEST'.
JOBCLASS - A, B ou C
Automation Engine
Le paramètre JOBCOUNT est fourni. Cette valeur doit être notée ou le mieux est de la copier dans le
presse-papiers.
3.
Tester le module fonctionnel UC4_JOB_SUBMIT
Paramètre à indiquer :
JOBCOUNT - introduire la valeur ou l'ajouter depuis le presse-papiers,
JOBNAME - comme pour le modèle fonctionnel UC4_JOB_OPEN,
REPORT_ID - 'RSM04000' ou 'RSM04000_ALV'.
309
310
Chapter 7 Analyse du code retour d'application des steps SAP
Après l'exécution, il faut s'assurer qu'aucune exception ne s'est produite. Les paramètres sont certes
fournis ici, mais ils ne sont pas impérativement nécessaires pour le test.
4.
Tester le module fonctionnel UC4_JOB_CLOSE.
Automation Engine
Paramètre à indiquer :
JOBCOUNT - introduire la valeur ou l'ajouter depuis le presse-papiers,
JOBNAME - comme pour le modèle fonctionnel UC4_JOB_OPEN.
Après l'exécution, il faut s'assurer qu'aucune exception ne s'est produite.
Le Job est maintenant démarré et peut être affiché à l'aide de la transaction standard SM37
(Système⇒Services⇒ Jobs⇒ Résumé de Job). Une fois le Job terminé, cela vient confirmer que les
modules fonctionnels élémentaires pour le contrôle de Job au sein du système SAP fonctionnent.
311
312
Chapter 7 Analyse du code retour d'application des steps SAP
Agent pour SAP BW
Généralités
La plate-forme UC4 Automation prend en charge la composante SAP Business Information Warehouse
(SAP BW) comme s'il s'agissait d'un système d'exploitation propre. D'un point de vue technique, cette
collaboration est réalisée de sorte que des modules fonctionnels sont appelés au sein du système SAP
par le biais des RFC (Remote Function Call) de SAP. La communication vers le système SAP est
effectuée uniquement via les RFC et est ainsi indépendante de l'environnement dans lequel SAP BW
est installé.
La configuration du paramètre de connexion a lieu dans l'objet Connexion de l'Agent. De plus, cet Agent
peut être activé pour toutes les versions de SAP BW prises en charge par UC4.
L'Agent pour SAP BW peut également exécuter des Jobs dans le système de base SAP (Jobs en arrièreplan standard).
Le tableau suivant indique les versions de SAP BW et de SAP Basis pour lesquelles un Agent est
disponible pour SAP BW.
Version BW
SAP Basis
Agent pour SAP BW
1,2B
4,5A
Non pris en charge.
2,0B
4.6C
Disponible à partir de la version UC4 2.63C.
2.1C
4.6D
Disponible à partir de la version UC4 2.63C.
3,0B
6.10
Disponible à partir de la version UC4 2.63D.
>3.0B
6.x
Disponible à partir de la version UC4 2.63D
Support Packages pour SAP BW
Pour utiliser l'Agent, nous vous recommandons d'installer les Support Packages de SAP BW ci-après.
Version SAP BW
Niveau du Support Package
2,0B
32
2.1C
24
3,0B
14
3.1C
08
>3.1C
Pas de niveau de Support Package connu
Automation Engine
313
Si un Support Package de niveau inférieur est installé sur l'Agent, les messages suivants peuvent
s'afficher. Vous trouverez de plus amples informations dans les notes SAP spécifiées.
Numéro de note SAP
Message
488588
short dump "DYNPRO_SEND_IN_BACKGROUND"
426047
Message E089(RSM1) "Job not (yet ?) started"
488808
BAPI_IPAK_CHANGE ignores InfoPackage Parameter
Vérification du statut
Dans la plate-forme UC4 Automation, on considère que le statut technique communiqué lors de l'appel de
fonction pour vérifier le statut est un "statut final". La description de ce terme dans Interface Repository est
la suivante:
Le paramètre TECHSTATUS est le statut technique de la demande. Il dispose toujours l'une des valeurs
suivantes :
l
l
l
G – Vert (la demande est enregistrée avec succès)
Y – Jaune (la demande est en cours de traitement)
R – Rouge (la demande génère une erreur ou est interrompue)
Le statut n'est cependant visiblement pas un "statut final". Il peut passer plusieurs fois en "rouge" pendant
un court instant (erreur ou interruption) puis passer de nouveau en "jaune" ou en "vert". Le système UC4 en
tient compte ; il est possible d'activer un délai de vérification du statut, par exemple lorsque le statut est
"rouge", le système vérifie encore x fois si le statut reste réellement "rouge". Les paramètres maxruntime=
et repeat_check= (section [SAP_BW]) se trouvent dans le fichier INI de l'Agent SAP à cet effet.
Une fonction est également appelée pour la vérification du statut des chaînes de processus. Les valeurs
des statuts sont les suivantes :
l
l
l
l
l
l
l
l
l
l
"R" – Interruption
"G" – Fin normale
"F" – Fin normale
"A" – Poursuivre la surveillance
"X" – Interruption
"P" – Poursuivre la surveillance
"S" – Interruption (mais uniquement après un redémarrage de la chaîne de processus)
"Q" – Poursuivre la surveillance
"Y" – Poursuivre la surveillance
" " – Poursuivre la surveillance
Ces statuts sont ensuite convertis en Codes Retour dans UC4:
Code retour
Statut
Statut SAP
0
ENDED_OK
G ou F
4
ENDED_NOT_OK
R
8
ENDED_NOT_OK
X
12
ENDED_NOT_OK
S
314
Chapter 7 Analyse du code retour d'application des steps SAP
Paramètres d'archivage avec R3_ACTIVATE_REPORT
Les paramètres d'archivage qu'un utilisateur peut spécifier pour R3_ACTIVATE_REPORT
correspondent aux zones de saisie illustrées ci-dessous. La boîte de dialogue s'affiche dans le système
SAP si "Archivage" a été sélectionné comme mode dans les paramètres d'impression.
Paramètres de SAP
Paramètres pour R3_ACTIVATE_REPORT
Type d'objet
ARCHIVE_SAPOBJECT
Type de Document
ARCHIVE_OBJECT
Information
ARCHIVE_INFO
Texte
ARCHIVE_TEXT
Rubriques connexes :
R3_ACTIVATE_REPORT
ERROR/ERRORLEVEL dans R3_ACTIVATE_SESSIONS
Lors de l'exécution de R3_ACTIVATE_SESSIONS, le système SAP cherche tout d'abord la liste des
dossiers à exécuter. Chaque dossier est exécuté par un seul Job SAP. Ce Job est appelé replayer
dans le présent document. Le replayer utilise l'ABAP "RSBDCBTC" pour l'exécution.
ERROR
Se rapporte au résultat (statut) du replayer. Le résultat peut être "A" pour interrompu, ou "F" pour terminé
avec succès.
Automation Engine
315
ERROR=IGNORE
Le prochain dossier de la liste des correspondances est toujours exécuté. Le résultat du replayer
précédent est ignoré.
ERROR=ABEND
La lecture des dossiers est immédiatement arrêtée lorsqu'un replayer se termine avec le statut "A". Le Job
UC4 est interrompu.
ERRORLEVEL
Se rapporte toujours au dossier et est vérifié à la fin du replayer. Il définit le pourcentage des transactions
d'un dossier qui ne se sont pas exécutées avec succès. Si la valeur des dossiers est dépassée, le
traitement du Job UC4 est interrompu. Aucun autre dossier de la liste des correspondances n'est démarré.
Si ERRORLEVEL n'est pas indiqué, aucune vérification des transactions inscrites avec succès n'est
effectuée.
316
Chapter 7 Analyse du code retour d'application des steps SAP
Résolution de problèmes
Conseils sur la recherche d'erreurs
Vous trouverez ici une liste des sources d'informations qui permettent de reconnaître une situation
d'erreur lorsque l'Agent ne fonctionne pas correctement (ou que partiellement), ou qu'il n'exécute pas
correctement certaines Tâches.
Rapport de Job
La source la plus proche est le rapport du Job UC4 pour SAP. Y sont journalisées pour chacune des
Tâches les actions que l'Agent a exécutées par rapport au système SAP ainsi que la façon dont elles se
sont terminées.
Attributs de l'objet activé
Il est possible que l'origine de l'erreur se trouve tout simplement dans les attributs de l'objet activé (par
exemple Client ou Utilisateur erronés). Vérifiez les attributs de l'objet correspondant.
Utilisateur CPIC
Pour la connexion au système SAP, un Utilisateur SAP (Client, nom, mot de passe) doit être défini dans
un objet Login. Cet Utilisateur doit également exister avec le même mot de passe dans tous les Clients du
système SAP dans lesquels des Tâches sont exécutées. Vérifiez l'objet Login mais aussi les Utilisateurs
du système SAP.
L'Agent est représenté par l'Utilisateur CPIC au sein du système SAP. Cet Utilisateur doit, bien entendu,
disposer des droits correspondants, par exemple droit d'opérateur pour le traitement en arrière-plan.
Vérifiez les droits de l'Utilisateur CPIC dans le système SAP.
Transactions utiles
La transaction "SM37" offre également des informations sur l'exécution de Job dans le log de Job et dans
la liste de spool. Le log XMI, qui peut être exécuté avec "RX15", fournit également des enregistrements
utiles.
Fichiers log
Vous trouverez des informations détaillées sur l'heure en question dans les fichiers log de l'Agent et du
Serveur. Vous pouvez également afficher le contenu des fichiers dans la Supervision Système. Au début,
l'intégralité du fichier INI est tout d'abord journalisée. Dans cette section, vous pouvez reconnaître les
paramètres avec lesquels l'Agent ou le Serveur s'exécute. Toutes les actions exécutées sont ensuite
enregistrées chronologiquement.
Le log système SAP
Les situations d'erreur se produisant au sein du système SAP sont journalisées dans le log système SAP.
Vous pouvez afficher le log système avec la transaction SAP "SM21". Dans certains cas, par exemple
Automation Engine
317
lorsque la planification d'un step de Job par un Agent échoue, le log système SAP est automatiquement
transféré dans le rapport de Job UC4. Il peut alors être affiché dans un nouvel onglet du rapport.
Traces
Les traces journalisent, sous forme de fichiers log, des informations encore plus détaillées sur les
processus. Elles contiennent, par exemple, les transmissions de messages entre l'Agent et le Serveur ou
entre l'Agent et le système SAP. Dans le dernier cas, on parle d'une trace RFC. Les traces doivent être
activées soit dans le fichier INI de l'Agent, soit dans la Supervision Système. Les contenus des traces
sont enregistrés dans des fichiers dans le répertoire de travail de l'Agent ou dans le répertoire spécifié.
Les traces sont conçues pour une analyse par le support ou le développement. Envoyez toujours ce
genre de documents à votre demande de support.
Attention : lors de l'activation de la trace RFC, des fichiers sont non seulement enregistrés côté Agent,
mais également sur la machine du serveur d'application SAP ! N'activez donc la trace que pendant
quelques instants, afin d'économiser de l'espace sur le disque dur. Pour empêcher toute création de
fichiers de trace dans le système SAP, vous pouvez définir le paramètre gw/accept_remote_trace_level
sur 0.
Vous trouverez des informations complémentaires sur la trace RFG dans la note SAP 532918.
Problèmes lors de l'importation des modules fonctionnels
Le programme tp ne se termine pas
Symptôme
Lors de l'importation des objets de développement, le programme tp ne se termine pas (il s'exécute
normalement pendant quelques minutes). Après interruption avec (Ctrl-C), le message suivant figure dans
le fichier SLOG.
Background Job RDDIMPDP could not be started or terminated abnormally
Origine
L'importation des objets de développement est exécutée par le Job RDDIMPDP. Cela est normalement
planifié en tant qu'Evènement et est déclenché par l'Evènement "SAP_TRIGGER_RDDIMPDP" du
programme tp. En l'occurrence, le démarrage de ce Job par l'Evènement ne fonctionne pas, tp attend donc
sans fin.
Solution
Vérifiez que l'Evènement "SAP_TRIGGER_RDDIMPDP" est défini (transaction SM64).
Contrôlez que les entrées pour le contrôle de l'Evènement ont été entrées correctement dans TPPARAM.
318
Chapter 7 Analyse du code retour d'application des steps SAP
Recherchez d'éventuels conseils dans le SAP Service Portal avec le mot-clé "SAP_TRIGGER_
RDDIMPDP".
En cas d'urgence, utilisez le RDDIMPDP qui dure 5 minutes ; il peut être planifié par ABAP RDDPUTPP
avec SE38.
Jobs SAP se terminant par ARCHIVE_INFO_NOT_FOUND
Symptôme
Les Jobs SAP se terminent par le message ci-dessous :
U2004001 RFC Returntext: ARCHIVE_INFO_NOT_FOUND
Origine
ARCHIVE_INFO_NOT_FOUND est une exception du module fonctionnel "GET_PRINT_
PARAMETERS". Ce module fonctionnel est un module fonctionnel standard du système SAP.
ARCHIVE_INFO_NOT_FOUND n'a pas nécessairement un rapport avec la zone d'informations des
paramètres d'archivage.
ARCHIVE_INFO_NOT_FOUND se rapporte à tous les paramètres d'archivage, à savoir :
l
l
l
l
ARCHIVE_O[BJECT]= catégorie de document
ARCHIVE_S[APOBJECT]= type d'objet
ARCHIVE_T[EXT]= texte
ARCHIVE_I[NFO]= zone d'informations
ARCHIVE_INFO_NOT_FOUND peut avoir toute une série de causes, telles que :
l
l
l
La catégorie de document ou le type d'objet indiqué n'est pas défini dans le système SAP.
La catégorie de document est affectée à une archive inexistante dans le système SAP (Content
Repository).
L'utilisateur ne possède pas les droits d'accès (voir l'objet d'autorisation S_WFAR_PRI).
Si UC4 transmet correctement les paramètres au module fonctionnel, la cause de l'exception existe la
plupart du temps dans le système SAP.
Solution
Vérifiez, à l'aide de la trace RFC, si UC4 a correctement transmis les paramètres au module fonctionnel.
Vérifiez les paramètres relatifs à "Business Documents" et "ArchiveLink" dans le Customizing du
système SAP ainsi que les autorisations de l'utilisateur CPIC.
Rubriques connexes :
R3_ACTIVATE_REPORT
Paramètres d'archivage pour R3_ACTIVATE_REPORT
Automation Engine
319
Problème de stabilité avec des instances SAP chez de nombreux Agents SAP
(connexion RFC) sur un serveur :
Symptôme
Le Serveur RFC/CPIC externe ne peut ouvrir de nouvelle connexion
et le message d'erreur suivant s'affiche :
LOCATION CPIC (TCP/IP) on local host ERROR max no. of 100 conversations
exceeded
Origine
Le nombre de connexions parallèles pouvant être maintenues dans la bibliothèque est limité à 100.
Solution
La Variable d'environnement CPIC_MAX_CONV vous permet d'augmenter cette valeur.
Windows : set CPIC_MAX_CONV=&lt;n&gt;
p. ex. set CPIC_MAX_CONV=500 (pour 500 connexions)
Unix : setenv CPIC_MAX_CONV &lt;n&gt; ( csh )
p. ex. setenv CPIC_MAX_CONV 500 (pour 500 connexions)
Unix : export CPIC_MAX_CONV=&lt;n&gt; ( ksh )
p. ex. export CPIC_MAX_CONV=500 (pour 500 connexions)
iSeries : ADDENVVAR ENVVAR(CPIC_MAX_CONV) VALUE(&lt;n&gt;)
p. ex. ADDENVVAR ENVVAR(CPIC_MAX_CONV) VALUE(500) (pour 500 connexions)
Problème de transmission de mot de passe à SAP
320
Chapter 7 Analyse du code retour d'application des steps SAP
Après la mise à jour vers les versions 2004s et ultérieures de SAP Netweaver, la connexion de
l'Utilisateur CPIC ne fonctionne plus
Symptôme
Les essais de connexions basées sur mot de passe (sur les systèmes : ABAP à partir de la version 7.00 /
NetWeaver 2004s / mySAP ERP 2005) échouent, même si l'Utilisateur a enregistré un mot de passe a
priori correct dans un composant frontal ou la destination d'un autre système. Cependant, une connexion
directe SAPGUI avec le même mot de passe réussit.
Origine
Les systèmes ABAP à partir de la version 2004s (7.00) de NetWeaver prennent en charge des mots de
passe de 40 caractères maximum, et sensibles à la casse. Dans les anciennes versions, la limite était de
8 caractères et toutes les minuscules étaient mises en majuscules.
Si un mot de passe non rétrocompatible est utilisé dans le nouveau système, et si le composant frontal ou
intermédiaire ne peut traiter correctement ces mots de passe, la connexion échoue. La raison en est en
général la conversion (invisible) minuscule/majuscule.
En effet, le mot de passe entré par l'Utilisateur n'arrive pas au Serveur sous sa forme originale, mais sous
une forme modifiée soit directement après la saisie, soit lors de la transmission (qui s'effectue à travers de
nombreux composants).
Définitions
l
Mot de passe : rétrocompatible / non rétrocompatible
Un mot de passe est rétrocompatible s'il a 8 caractères au maximum et ne contient aucune
minuscule.
Un mot de passe n'est pas rétrocompatible s'il a plus 8 caractères au maximum et/ou contient au
moins une minuscule.
Les anciennes versions des systèmes ABAP ne prennent en charge que les mots de passe
rétrocompatibles. A partir de la version 7.00, les deux sortes de mots de passe peuvent être
utilisées. Comme les minuscules ne sont plus converties en majuscules, les mots de passe des
nouvelles versions des systèmes ABAP ne sont généralement pas rétrocompatibles.
l
Méthode de hachage de mots de passe / Versions de Code
Les systèmes ABAP ne sauvegardent pas les mots de passe en clair. Ils calculent à partir des
données saisies une somme de contrôle qu'ils sauvegardent avec les méta-données décrivant le
mode de hachage ("version de code"). Ces informations sont enregistrées dans les données de
référence de l'Utilisateur et utilisées lors de la vérification du mot de passe. A partir du mot de
passe saisi, une somme de contrôle est calculée avec la version de code enregistrée dans les
données de référence de l'Utilisateur et comparée à celle de ces mêmes données.
La quantité des méthodes de hachage dépend de la version du programme, les nouvelles prenant
Automation Engine
321
toujours en charge celles des versions précédentes. De cette façon, la connexion protégée par mot
de passe est toujours possible, même après une mise à jour.
Seules les méthodes de hachage de mot de passe des versions à partir de 7.00 prennent aussi en
compte les mots de passe non rétrocompatibles. Les anciennes versions ne prennent en charge
que les mots de passe rétrocompatibles.
Ce sont donc les données enregistrées dans les données de référence de l'Utilisateur (version de
code) qui déterminent tout d'abord la prise en compte éventuelle de la connexion effectuée avec
des mots de passe non rétrocompatibles.
Solution
l
Emploi d'Utilisateurs techniques (dans des destinations RFC) :
Nous vous conseillons d'utiliser le type d'Utilisateur SYSTEM (ou SERVICE, si la fonction
SAPGUI est nécessaire) sur le Serveur, car c'est le seul type pour lequel la durée de validité du mot
de passe est illimitée. Tant que le mot de passe doit être saisi dans une destination RFC d'une
version ancienne d'un système (= Client RFC), il doit être défini de façon rétrocompatible au niveau
du Serveur Cela est toujours possible aux types SYSTEM ou SERVICE, même si les règles de
définition des mots de passe obligent l'utilisation de mots de passe non rétrocompatibles (avec
login/min_password_lng &gt; 8 ou login/min_password_lowercase &gt; 0 par ex.).
l
Emploi d'anciens composants frontaux ou intermédiaires et connexion d'Utilisateurs
"normaux" (de type DIALOG) :
Dans ce cas, il n'est pas indiqué de modifier les mots de passe des nombreux Utilisateurs (comme
dans le cas précédent des utilisateurs techniques). Vous devrez dans ce cas remplacer les
composants frontaux / intermédiaires obsolètes. La remarque SAP 792850 énumère les versions à
partir desquelles certains composants frontaux et intermédiaires prennent en charge les mots de
passe non rétrocompatibles. Il peut être de plus nécessaire d'actualiser d'autre composants
logiciels (d'autres fournisseurs par ex.) dépendant de ces mêmes composants, dans le cas
notamment où ces composants ont une fenêtre de dialogue de saisie de mot de passe propre mais
ne prennent pas en charge les mots de passe non rétrocompatibles.
Provisoirement et à titre de test, vous pouvez définir le paramètre de profil login/password_
downwards_compatibility sur 2 ou 3. Dans ce cas, le Serveur vérifie si le Client a envoyé un mot de
passe rétrocompatible (coupé après 8 caractères et converti en majuscules) au lieu du mot passe
non rétrocompatible attendu. Cela est alors journalisé dans le système (pour analyse des erreurs) et
la connexion est considérée comme réussie (paramètre sur 3) Le paramètre peut être modifié
dynamiquement, sans redémarrage du système avec la transaction SAP RZ 11.
7.11.5 Certification
Résumé
Les fonctionnalités liées à SAP sont naturellement certifiées.
322
Chapter 7 Analyse du code retour d'application des steps SAP
Le tableau suivant présente une liste de tous les certificats :
Solution Interface Software
Interface SAP
Agent UC4 for SAP
BC-XBP 6.10 - Background Processing, Job Scheduling 6.10 (Vers.
2.0)
BC-XBP 7.0 - Background Processing, Job Scheduling 7.0 (Vers. 3.0)
JAVA-JXBP 7.1
Agent UC4 for SAP BW
BW-SCH 3.0 - Scheduling for SAP BW 3.0
UC4.Agent pour Java
EE/JMX
JAVA-EE-STD 7.1
Rubriques connexes :
Partenaires SAP
SAP Developer Network (SDN)
7.12 UC4 et Siebel
7.12.1 Démarrage et surveillance de Tâches
L'Agent Siebel utilise l'interface de ligne de commande de Siebel Server Manager pour l'exécution des
Tâches dans Siebel. Le répertoire dans lequel celui-ci se trouve doit être saisi dans le fichier INI de
l'Agent Siebel, dans la section [VARIABLES].
Exemple :
Automation Engine
323
[VARIABLES]
UC_SIEBEL_SRVRMGR=C:\siebel\srvrmgr.exe
Dans l'onglet Script du Job Siebel, il est possible de marquer les commandes devant être exécutées dans
Siebel. Pour ce faire, un script nommé SI_START_TASK est à votre disposition. La commande Siebel est
transmise avec le paramètre CMD= de ce script :
SI_START_TASKCMD="Commande 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.
A la fin de l'exécution des Tâches, deux fichiers log sont disponibles :
1) Fichier Log de l'appel du Siebel Server Manager
2) Fichier log de la Tâche
Dans la section [VARIABLES] du fichier INI de l'Agent Siebel, définissez où ceux-ci doivent être
enregistrés. Les fichiers Log peuvent être transmis sous forme de rapport par l'Agent Siebel vers UC4.
Exemple :
[VARIABLES]
UC_SIEBEL_SRVRMGR=C:\siebel\srvrmgr.exe
UC_SIEBEL_LOGPATH=C:\siebel\siebelLOGS\
Attention : le contenu du rapport peut être lu avec le script PREP_PROCESS_REPORT. Le type de
rapport "LOG" représente ainsi le fichier log de l'exécution de Siebel Server Manager et le type de rapport
"REP" représente le fichier log de la Tâche.
Rubriques connexes :
Onglet Attributs de l'hôte - Siebel
7.13 UC4 et UNIX
7.13.1 Authentification des données d'identification
Les Jobs et Transferts de Fichiers doivent s'identifier avec succès au système d'exploitation avant de
pouvoir être exécutés. Les données de connexion sont enregistrées dans leur objet Login.
L'Agent met à disposition deux possibilités pour vous permettre d'authentifier les noms d'utilisateur et les
mots de passe.
1. Authentification locale de l'utilisateur
2. Pluggable Authentication Modules (PAM)
L'authentification à l'aide de PAM n'est prise en charge que pour l'Agent sous AIX, Linux et Sun Solaris
(SPARC) !
Vous définissez dans le fichier INI de l'Agent la méthode que vous souhaitez voir utilisée. Dans la section
[MISC], il existe à cet effet un paramètre nommé Authentification=. Attribuez-lui soit la valeur "local", soit
"PAM".
Exemple :
324
Chapter 7 Analyse du code retour d'application des steps SAP
[MISC]
authentification=local
Si vous décidez d'utiliser l'authentification par PAM, vous devez alors également indiquer le nom de la
bibliothèque.
Exemple :
[PAM]
Libname=libpam.so
Si la bibliothèque ne se trouve pas dans le répertoire par défaut, il faut inclure son chemin dans la
variable d'environnement LD_LIBRARY_PATH.
Attention : l'Agent doit impérativement posséder des privilèges root !
Rubriques connexes :
Objet Login
7.13.2 Shell et options de shell
Pour un Job UNIX, il est possible de définir dans l'Onglet "Unix" un shell sous lequel ce Job doit
s'exécuter. Si nécessaire, il est également possible de spécifier des options pour l'exécution du shell. Si
aucun shell n'est sélectionné, UC4 utilise le shell par défaut du fichier passwd.
Les shells que vous pouvez choisir dans l'onglet "Unix" sont gérés dans la Variable UC4 UC_SHELL_
UNIX du Client 0000 Par défaut, les shells suivants y sont entrés :
l
l
l
l
l
bash
csh
ksh
sh
tcsh
Vous pouvez y rajouter d'autres shells en les entrant dans la Variable UC4 UC_SHELL_UNIX. En outre,
une ligne de script spécifique au shell doit être complétée dans l'Include TRAILER.UNIX. Elle a le format
suivant :
##UC4[shell]commande spécifique au shell
Détermination du chemin Shell
1. Si une chaîne de chemin d'accès est définie dans le fichier de configuration (section STARTCMD,
paramètre "shell_pfad"), ce chemin est repris.
Format de la chaîne de chemin d'accès : <Path name1>[:<Path name2>]...
Format nom du chemin d'accès : /<dir1>[/<dir2>]...
2. Si le paramètre "chemin_shell" n'est pas indiqué, la variable d'environnement PATH est lue et
utilisée.
3. Si aucune variable d'environnement PATH n'existe, le répertoire "/bin" est repris.
Automation Engine
325
Le nom de fichier Shell est créé à partir du chemin d'accès Shell et du Shell sélectionné (onglet Attributs
de l'Agent) et son droit d'exécution est vérifié. Si le fichier ne peut pas être exécuté ou est introuvable, un
message d'information apparaît et le Shell par défaut de l'utilisateur défini dans le fichier passwd est
utilisé. Si aucun Shell n'est indiqué dans le fichier passwd, le bourne-shell à partir de "/bin/sh" est utilisé.
Détermination de l'option du Shell
Si des options du Shell sont définies dans l'onglet Attributs de l'Agent, ces options seront utilisées.
Dans le fichier de configuration, il est possible de définir des options du Shell (section STARTCMD,
variables "Bourne_Shell_Opt", "Korn_Shell_Opt" et "C_Shell_Opt").
Si aucune des possibilités mentionnées ci-dessus n'est disponible, l'option standard "-c" est applicable
dans le programme.
7.13.3 ID utilisateur pour l'Agent UNIX
L'Agent UNIX doit être installé sous un ID utilisateur répondant aux exigences suivantes :
l
l
Le sous-répertoire "temp" doit être défini de manière à ce qu'il puisse être lu par tout autre ID
utilisateur. Pour ce faire, il ne suffit pas d'attribuer à ce répertoire un droit de lecture pour tous, mais
tous les sous-répertoires (à partir de root) doivent également avoir un droit de lecture.
Le sous-répertoire "out" doit être défini de manière à ce que tout autre ID utilisateur puisse y
accéder en écriture. Pour ce faire, tous les répertoires de niveau supérieur doivent au moins
posséder un droit de lecture (voir plus haut).
7.13.4 Agent UNIX - Prise en charge du Transfert de Fichier
Lors de la définition d'un objet Transfert de Fichier, il est possible de spécifier dans l'onglet "Transfert de
Fichier" des options supplémentaires dans le champ "Attributs de fichier".
Sous UNIX, il n'existe pas d'attributs de fichier. Toutes les indications jusqu'à l'option "reclen" et "nl" sont
donc aussi ignorées. Les options doivent être séparées par une virgule.
Options pour le champ d'attribut source
l
l
reclen - longueur de l'enregistrement (en octets).
nl=mixed - si un caractère CR se trouve à la fin d'une ligne d'un fichier texte, cela peut rendre le
fichier inutilisable sur de nombreux systèmes. La valeur "mixed" permet son élimination
automatique.
Options pour le champ d'attribut cible
l
nl : caractère de séparation des lignes
Valeurs autorisées : "crlf", "lf" (par défaut) et "none"
"crlf" - Retour chariot avec saut de ligne (carriage return and line feed).
"lf" - Saut de ligne (line feed).
"none" - Pas de séparation de ligne.
Exemple : nl=crlf
326
Chapter 7 Analyse du code retour d'application des steps SAP
7.13.5 Droits pour la suppression de fichiers source dans
les Transferts de Fichiers
Le Transfert de Fichier vous permet de définir la suppression du fichier après le transfert. Dans le cas
d'une source UNIX, différents droits doivent être vérifiés. Le graphique de traitement ci-dessous vous
montre la progression exacte.
Informations relatives au graphique de traitement
User-UID = ID de l'Utilisateur indiqué dans l'objet Login de la source (zone "De" dans l'onglet "Transfert de
Fichier").
Droit de suppression = Les droits "wx" sur le dossier dans lequel le fichier se trouve.
Lors de la vérification, le système recherche User-GID=Ordner-GID pour déterminer si l'Utilisateur fait
partie du Groupe appartenant également au dossier.
Automation Engine
327
7.13.6 Interrogation du système de fichiers UNIX
A l'aide d'un exemple, nous allons montrer comment le système de fichiers UNIX peut être interrogé
avec l'utilitaire UCXE???F d'UC4.
Doivent être énumérés tous les fichiers,
l
l
l
qui se trouvent dans le répertoire de base de l'ID "UC4" et dans tous les répertoires se trouvant
dans celui-ci,
dont le dernier accès se situe entre le 1.10.1999 00:00 et le 7.10.1999 23:50
dont la taille se situe entre 1 et 9999 octets.
La création, la configuration et le traitement d'une séquence de données sont un processus complexe au
cours duquel les fonctions et les instructions de script ainsi que des objets spéciaux interagissent.
L'exemple suivant montre les définitions nécessaires dans les objets impliqués et à quoi les scripts font
référence. L'exemple est intentionnellement succinct et facile pour clarifier le principe en dépit de sa
complexité.
Grâce à l'utilitaire UCXE???F d'UC4, les possibilités d'interrogation par rapport à la commande de
système d'exploitation habituelle "Is" sont élargies. Il doit être installé sur l'hôte. Les points d'interrogation
du nom du programme représentent l'ID et la version du système du dérivé UNIX.
Job: SC.PROCESS.UNIXFS
Dans le script de ce Job, la fonction PREP_PROCESS est appelée afin de préparer le traitement de la
séquence de données. Les paramètres suivants sont ainsi transmis :
l
l
l
l
Nom de la machine sur laquelle un Job d'Evènement doit être exécuté, ici "SOLARIS".
Type du Job Evènement devant être exécuté, ici : "UNIXFS".
La saisie "UNIXFS" entraîne l'exécution du Job "EVENT.UNIXFS".
Par défaut, les Jobs Evènements "EVENT.BS2000CMD", "EVENT.BS2000UCON",
"EVENT.UNIXCMD", "EVENT.UNIXFS" et "EVENT.WINCMD" sont fournis dans le Client
"0000". Ils peuvent être utilisés directement ou en tant que modèles pour des Jobs Evènement
personnels.
Le troisième paramètre de fonction spécifie les lignes générées par la commande devant être prises
en compte. Le caractère générique "*" permet d'accepter toutes les lignes générées.
Avec les mots clés "PFAD" et "FSPAR", d'autres paramètres contenant les interrogations du
système de fichiers UNIX sont introduits. Après le mot clé "FSPAR", suivent des mots clés et des
attributions de valeurs pour l'intervalle d'accès, la taille du fichier et la recherche de tous les sousrépertoires. Les particularités suivantes s'appliquent pour la définition de la période d'accès : Le
début est indiqué sans marque horaire. L'heure est alors automatiquement définie sur 00:00. La fin
328
Chapter 7 Analyse du code retour d'application des steps SAP
l
se compose des date et heure séparées par un espace. Etant donné que l'espace sépare chacune
des valeurs au sein du paramètre, les date et heure doivent se trouver entre guillemets.
"UC4ADMIN" est spécifié comme objet Login.
Le Job "EVENT.UNIXFS" est ainsi démarré.
Job: EVENT.UNIXFS
Ce Job est le Job "EVENT.UNIXFS" fourni par défaut dans le Client "0000".
Il est important que la case à cocher "Dialogue des attributs" soit sélectionnée dans l'onglet Attributs de
ce Job. Cela permet de lire l'objet Include "ATTRDIA.UNIX" qui provoque normalement le dialogue des
attributs.
Include: ATTRDIA.UNIX
Automation Engine
329
Cela vous permet de renseigner tous les attributs figurant dans le script de l'Include. Le dialogue des
attributs n'est pas affiché, car la transmission des contenus de la Variable se fait en interne.
Job: EVENT.UNIXFS
Au démarrage du Job "EVENT.UNIXFS", les Variables de script "&PFAD" et "&FSPAR" sont
renseignées. Vous obtenez leur attribution à partir des paramètres de la fonction de script PREP_
PROCESS du Job "SC.PROCESS.UNIXFS". Avec ces valeurs, l'utilitaire d'UC4, qui transmet les
informations demandées au système de fichiers UNIX, est exécuté. Les points d'interrogation du nom de
330
Chapter 7 Analyse du code retour d'application des steps SAP
l'utilitaire ne doivent pas être remplacés, étant donné qu'après installation correcte de l'utilitaire, celui-ci
doit pouvoir être démarré.
Pour chaque Transfert de Fichier, le fichier en sortie est transféré au UC4 Automation Engine et il est à
disposition en tant que séquence de données. Le Job "EVENT.UNIXFS" est terminé.
Job: SC.PROCESS.UNIXFS
La fonction PREP_PROCESS renvoie une valeur qui est une référence aux données de gestion de la
séquence de données à traiter.
Cette valeur est passée à l'instruction :PROCESS comme paramètre de démarrage. :PROCESS et
:ENDPROCESS forment une boucle de processus qui va s'exécuter ici jusqu'à ce que la fin de la
séquence de données soit atteinte. A chaque cycle de la boucle, une nouvelle ligne de cette séquence de
données est lue dans la mémoire de travail. La fonction GET_PROCESS_LINE peut calculer, avec la
valeur actuelle, le contenu des lignes de la séquence de données.
Dans l'exemple, la ligne respective est affichée dans le protocole d'activation.
L'instruction :STOP interrompt l'exécution du Job et affiche ce protocole d'activation.
7.13.7 PREP_PROCESS - Interrogation du système de
fichiers UNIX
Pour l'interrogation du système de fichiers UNIX, nous mettons à disposition l'utilitaire "UCXE???F"
d'UC4. Les points d'interrogation représentent l'ID et la version du système du dérivé UNIX.
Grâce à l'utilitaire d'UC4, les possibilités d'interrogation par rapport à la commande de système
d'exploitation habituelle "Is" sont élargies. Pour obtenir ainsi des informations sur le système de fichiers
UNIX, les paramètres de la fonction de Script PREP_PROCESS doivent être spécifiés selon une
syntaxe spéciale.
Dans un paramètre de la fonction de Script, le nom de fichier ainsi que le chemin peuvent être nommés. Ce
paramètre est introduit par le mot clé PFAD. Pour les noms de fichiers, vous pouvez utiliser les caractères
génériques "*" et "?". "*" signifie n'importe quelle chaîne de caractères et "?" exactement un caractère. Si
ni le chemin ni le nom de fichier ne sont spécifiés, le répertoire actuel est traité. A l'heure actuelle, il n'est
pas encore possible d'utiliser les chemins relatifs.
Un autre paramètre, commençant par le mot clé FSPAR, accepte les valeurs pour l'interrogation du
système de fichiers. Ceux-ci se composent à nouveau d'un mot clé et d'une valeur. Si plusieurs autres
valeurs sont spécifiées, il faut les séparer par un espace. Si un espace se trouve au sein d'une de ces
valeurs, cette valeur doit être placée entre des guillemets doubles (exemple : ATIME="980101 1000").
Automation Engine
Mot clé
Valeur/description
PFAD (ou : PATH)
Mot clé de paramètre pour la spécification du nom de fichier et du chemin.
FSPAR
Mot clé de paramètre pour la spécification du système de fichiers.
TYPE
Indication d'un type de fichier :
331
- fichier ordinaire
D - fichier de répertoire
L - référence symbolique (non incluse dans POSIX.1 ou SVR4)
B - fichier de matériel orienté bloc
C - fichier de matériel orienté caractères
P - Pipe ou FIFO
S - Socket (non incluse dans POSIX.1 ou SVR4)
Par défaut : tous les types de fichiers
SIZE
Sélection de la taille du fichier
OWNER
Nom du propriétaire du fichier (Utilisateur), pas celui de l'ID Utilisateur
GROUP
Nom du propriétaire du fichier (Groupe), pas celui de l'ID Groupe
ATIME
Marque horaire du dernier accès
MTIME
Marque horaire de la dernière modification
STIME
Marque horaire de la modification du statut du fichier
MODE
Si vous spécifiez "Récursif", les répertoires subordonnés sont également lus.
Remarques
La spécification de SIZE est uniquement possible pour les fichiers normaux. Si SIZE a été défini, la valeur
TYPE est définie en interne sur fichier normal. La taille du fichier est indiquée en octets.
Exemples :
SIZE=100,
Fichiers de plus de 100 octets
SIZE=100
Fichiers de moins de 100 octets
SIZE=,100
Fichiers de moins de 100 octets
SIZE=100,4000 Fichiers de 100 à 4000 octets
Lors de la spécification de ATIME, MTIME et STIME, les formats de date et d'heure suivants sont pris en
charge. Les abréviations "A" pour l'année, "M" pour le mois et "J" pour le jour sont utilisées. Si aucune
heure n'est spécifiée, "0000" est utilisé par défaut.
AAAAMMJJ,
"AAAAMMJJ HHMM",
AAMMJJ,
"AAMMJJ HHMM".
Exemple :
ATIME=19971231
Fichiers antérieurs à cette date
ATIME=,19971231
Fichiers antérieurs à cette date
ATIME=19971231,
Fichiers postérieurs à cette date
ATIME=19970101,19971231 Fichiers compris entre ces deux dates
332
Chapter 7 Analyse du code retour d'application des steps SAP
Exemple
Dans le répertoire de base de l'ID Utilisateur "UC4", tous les fichiers dont le dernier accès se trouve entre
le 6.10.1997 12:00 et le 31.12.1998 23:50 et dont la taille de fichier se situe entre 1 et 9999 octets sont
énumérés. Ainsi, tous les répertoires se trouvant sous le répertoire de base sont pris en compte.
:SET&HND = PREP_PROCESS('SOLARIS','UNIXFS','*','UC_LOGIN=UC4','PFAD=./*',
'FSPAR=ATIME="19971006 1200","19981231 2350" SIZE=1,9999 MODE=REKURSIV')
Rubriques connexes :
Interrogation du système de fichiers UNIX
Généralités sur les scripts
Elément de script - Liste alphabétique
Elément de script - Division fonctionnelle
7.13.8 Interruption de processus AIX en cas de mémoire
insuffisante
Il peut y avoir des interruptions dans AIX lorsque la mémoire attribuée à un processus pour le traitement en
cours ne suffit plus. Par défaut, 256 Mo sont attribués à chaque processus sur un système AIX. Avec la
Variable d'environnement LDR_CNTRL, il est possible d'augmenter cette limite de mémoire à 2 Go
maximum.
Cette Variable doit impérativement être définie sur AIX avant le démarrage de l'UC4 Automation Engine.
Les commandes suivantes doivent être exécutées :
LDR_CNTRL=MAXDATA=0x80000000
export LDR_CNTRL
La valeur 8 représente 8 x 256 Mo (il s'agit de la valeur maximale) et correspond à 2 Go.
Avec ce paramétrage, un Agent 32 bits peut allouer jusqu'à 2 Go de mémoire. Les interruptions dues à un
manque de mémoire disponible peuvent avant tout se produire lors de la transmission ou du traitement de
grandes listes spool ou de grands rapports.
Dans les Jobs pour lesquels plus de 2 Go de mémoire sont nécessaires, la limite du Job doit être
élevée manuellement par l'Utilisateur au moyen de la commande ulimit (si l'Utilisateur possède
l'autorisation correspondante). Il est également possible de ne pas utiliser de limite de mémoire en
paramétrant le Job au moyen de la commande ulimit -d unlimited.
7.13.9 Agrandissement des fichiers centraux
Par défaut, AIX crée uniquement un fichier central minimal. Pour qu'une analyse rapide du problème
puisse être effectuée en cas d'erreur, un fichier central complet doit être disponible. La Variable
d'environnement système "fullcore" doit donc être définie sur la valeur "true".
Interrogez tout d'abord la Variable. "sys0" représente le nom du périphérique.
lsattr -El sys0 | grep fullcore
Le résultat ressemble par défaut à ce qui suit :
fullcore
false
Enable full CORE dump
True
Automation Engine
333
Il existe plusieurs façons de définir la Variable "fullcore" sur la valeur "true". Le plus simple consiste à
exécuter l'outil "smit" avec le paramètre "chgsys" sous l'Utilisateur root.
smit chgsys
A l'aide de l'outil, définissez la Variable "Enable full CORE dump" sur la valeur "true". Cela active la
Variable "fullcore" sur l'ensemble du système.
Il existe encore deux autres paramètres avec lesquels vous pouvez définir la taille de fichier maximale et
donc également celle du fichier central. Avec la commande "ulimit", interrogez les valeurs définies :
ulimit -a
Le résultat pourrait, par exemple, ressembler à ce qui suit :
file(blocks)
coredump(blocks)
2097151 <-- !
2097151 <-- !
La commande "ulimit" peut modifier les valeurs. L'option "-f" indique la taille de fichier maximale en blocs
de 512 octets ou de façon illimitée.
Exemples :
ulimit -f 4096
# 4096 * 512 Bytes
ulimit -f unlimited
L'option "-c" définit la taille maximale des fichiers centraux en blocs de 512 octets ou de façon illimitée.
Exemples :
ulimit -c 4096
# 4096 * 512 Bytes
ulimit -c unlimited
7.13.10 Codes retour des Jobs UNIX
L'Agent journalise dans le rapport d'activation du Job toutes les erreurs qui se sont produites.
En outre, il définit en fonction de l'exécution du Job un des codes retour suivants :
Code retour
Description
0
Aucune erreur n'est survenue.
1-200
Code d'erreur du système d'exploitation.
201
setgid() - L'Agent ne possède pas les privilèges requis.
202
initgroup() - L'Agent ne possède pas les privilèges requis.
203
setuid() - L'Agent ne possède pas les privilèges requis.
205
chdir() - Le répertoire de modification pour l'Utilisateur de Job n'existe pas
206
Le fichier de rapport de Job ne peut pas être ouvert.
208
dup2(STDOUT) - La sortie par défaut ne peut pas être attribuée.
209
dup2(STDERR) - L'erreur par défaut ne peut pas être attribuée.
210
execle() Erreur - Le fichier de Job ne peut pas être exécuté.
Im Job-Objekt können Sie in der Registerkarte "Laufzeit" bestimmen ab welchem Returncode der Job
abgebrochen werden soll.
334
Chapter 7 Analyse du code retour d'application des steps SAP
7.13.11 Activation de la trace de l'informateur de Job
Les instructions suivantes expliquent comment activer la génération de trace de l'informateur des Jobs
UNIX et VMS. Ceci est possible par Job, par Client ou pour l'ensemble du système.
La trace de l'informateur de Job est inscrite par l'Agent dans le rapport de Job (REP). Ces Tâches se
trouvent au début (informateur de démarrage) et à la fin (informateur de fin) du rapport et contiennent des
informations sur le déroulement de la connexion de l'informateur. Si une erreur se produit en rapport avec le
programme d'informateur, la génération de trace est activée automatiquement.
La génération est activée de la manière suivante :
A l'exécution du programme d'informateur de Job dans l'Include dans l'en-tête et/ou le pied de page (voir :
Includes de Job), le paramètre TRC= doit être utilisé. Il est indiqué par défaut dans les Includes de Job
pour Unix. La Variable de Script &UC_MD_JOB_TRC préalablement définie est transmise à ce
paramètre. La génération de trace peut ainsi être activée ("1") ou désactivée ("0") via cette Variable.
L'activation de la trace est possible au niveau suivant :
l
Pour tous les Jobs du système UC4
Configuration dans les Includes dans l'en-tête / le pied de page dans le Client système.
Cette configuration n'est pas recommandée, car les rapports de tous les Jobs UNIX ou VMS
grossissent nettement et la durée d'exécution s'allonge.
l
l
Pour tous les Jobs d'un Client
Les Includes dans l'en-tête / le pied de page doivent être créés et adaptés dans le dossier <défaut>
du Client.
Par Job (recommandé)
La Variable de Script doit être définie dans l'onglet Pré-traitement.
L'activation de la génération de trace de l'informateur de Job est prévue par défaut dans l'Include dans l'entête des Jobs Unix. Ouvrez l'objet Include HEADER.UNIX dans le Client système. Vous y verrez la
définition de la Variable &UC_JOB_MD_TRC. La valeur de la Variable est transmise au paramètre TRC=
par l'exécution de l'informateur de Job (ligne JCL).
Automation Engine
Il est ainsi possible d'activer la génération de trace pour un Job Unix spécifique en ajoutant la ligne de
Script suivante dans l'onglet Pré-traitement :
:SET &UC_JOB_MD_TRC = '1'
335
336
Chapter 7 Analyse du code retour d'application des steps SAP
Rubriques connexes :
Informateur de Job des Agents
Logging / Trace
7.14 UC4 et VMS
7.14.1 Agent VMS - Prise en charge du Transfert de Fichier
Lors de la définition d'un objet Transfert de Fichier, il est possible de spécifier dans l'onglet "Transfert de
Fichier" des attributs de fichier pour la destination du Transfert de Fichier.
Attributs possibles
Attribut
Désignation des attributs
alq = Numéro
Allocation quantity ; ignoré
si une allocation XAB est
présente.
bls = Numéro
Device block size
(s'applique uniquement aux
fichiers d'organisation
séquentielle)
Valeurs
possibles
Description
Automation Engine
deq = Numéro
Default extension quantity.
fop = Valeur,
Valeur, ...
File-processing options
fsz = Numéro
Fixed header size.
gbc = Numéro
The requested number of
global buffers for a file.
ctg
Contiguous : indique que l'espace pour
un fichier doit être alloué de manière
contiguë.
cbt
Contiguous-best-try.
cif
Create if nonexistent.
dfw
Deferred write : La réécriture dans le
fichier du tampon modifié est différée.
S'applique aux fichiers relatifs et
indexés et aux fichiers séquentiels
ouverts pour un accès partagé.
dlt
Delete file on close.
mxw
Maximize version number.
nef
Not end-of-file.
pos
Current position.
rck
Read check compare operation.
rwc
Rewind file on close.
rwo
Rewind file on open.
scf
Submit as command file on close.
spl
Spool to system printer on close.
sqo
File can only be processed in a
sequential manner.
sup
Supersede.
tef
Truncate at end-of-file.
tmd
Temporary delete.
tmp
Temporary (no file directory).
wck
Write check compare operation.
cr
Carriage-return control.
blk
Disallow records to span block
boundaries.
ftn
Fortran print control.
none
Explicitly forces no carriage control.
prn
Print file format.
fix
Fixed-length record format.
mbc = Numéro Multiblock count.
mbf = Numéro
Multibuffer count.
mrs = Numéro
Maximum record size.
rat = Valeur,
Valeur, ...
Record Attribute
rfm = Valeur
Record Format
337
338
Chapter 7 Analyse du code retour d'application des steps SAP
rop = Valeur,
Valeur,...
Record processing
Operations
stm
RMS stream record format.
stmlf
Stream format with line-feed
terminator.
stmcr
Stream format with carriage-return
terminator.
udf
Undefined.
var
Variable-length record format.
vcf
Variable-length record with fixed
control.
asy
Asynchronous I/O.
cco
Cancels Ctrl/O (used with Terminal
I/O).
cvt
Capitalizes characters on a read from
the terminal.
eof
Positions the record stream to the endof-file for the connect operation only.
nlk
Do not lock record.
pmt
Enables use of the prompt specified by
"pmt=usr-prmpt" on input from the
terminal.
pta
Eliminates any information in the typeahead buffer on a read from the
terminal.
rah
Read ahead.
rea
Locks record for a read operation for
this process, while allowing other
accessors to read the record.
rlk
Locks record for write.
rne
Suppresses echoing of input data on
the screen as it is entered on the
keyboard.
rnf
Indicates that Ctrl/U, Ctrl/R, and
DELETE are not to be considered
control commands on terminal input,
but are to be passed to the application
program.
rrl
Reads regardless of lock.
syncsts
Returns a success status of RMS$_
SYNCH if the requested service
completes its task immediately.
tmo
Timeout I/O.
Automation Engine
339
tpt
Allows put/write services using
sequential record access mode to
occur at any point in the file, truncating
the file at that point.
ulk
Prohibits RMS from automatically
unlocking records.
wat
Wait until record is available, if
currently locked by another stream.
wbh/nowbh
Write behind.
7.14.2 Codes retour des Jobs VMS
La signification des codes retour dans VMS diffère de celle de UC4. La valeur "1" indique dans VMS que
le Job s'est bien terminé. "0" représente les avertissements. En revanche, dans UC4, le code retour "0"
signifie une exécution réussie et les valeurs différentes de "0" représentent des erreurs.
Attention : l'Agent doit annoncer le code retour "1" au système UC4 sous la forme "0" !
Cela a naturellement pour effet que les avertissements et les exécutions de Job réussies ne sont pas
distinguables. Analysez donc la Variable $severity en fonction d'une commande VMS. Elle contient le
code retour des dernières commandes exécutées. Cela permet de contrôler, à l'aide du Script, la
progression du Job.
Définissez un objet Include pour l'analyse de la Variable $severity. Vous ne devrez ainsi maintenir les
lignes de Script que dans un seul objet et vous pouvez les insérer à un emplacement quelconque dans vos
Jobs.
Exemple pour un objet Include :
$
$
$
$
$
$
RETCODE = $severity
if (RETCODE .EQ. 0)
then
RETCODE = 3
goto RETURN
endif
Le système vérifie si le code retour représente un avertissement. Dans ce cas, l'exécution du Job se
poursuit dans la queue. "goto RETURN" passe ainsi dans l'objet Include "TRAILER.VMS" qui est exécuté
à la fin de chaque Job.
Rubriques connexes :
Job - Includes
7.15 UC4 et WebSphere MQ
7.15.1 UC4.Connect pour WebSphere MQ Queue Manager
UC4.Connect est l'élément de jonction entre WebSphere MQ Queue Manager et UC4 Automation
Engine.
340
Chapter 7 Analyse du code retour d'application des steps SAP
UC4.Connect lit la demande, un message au format XML, dans la file d'attente des demandes (SIQ) et la
transmet à UC4 Automation Engine pour exécution. Un format interne est utilisé pour cela. UC4.Connect
attend que le UC4 Automation Engine confirme l'exécution et qu'il annonce sa fin. Un format interne est
également utilisé pour cela. La réponse est attribuée par UC4.Connect à la demande et elle est écrite au
format XML dans la file d'attente des réponses (CIQ).
Message XML de la demande
Elément XML
Description
<apiscriptexec>
Début de la demande API.
Cet élément XML doit exister.
<uc-env request="ID"
release="1">
L'ID spécifié caractérise la demande.
L'attribut "request=" doit être renseigné. Les messages
d'UC4.Connect renvoient à cet ID. Le message réponse comprend
également l'ID.
L'attribut "release=" n'est pas obligatoire. S'il est entré, seul "1" est
autorisé à l'heure actuelle. L'attribut sert à l'avenir à spécifier la
version.
Cet élément XML doit exister.
<requestname name="any
name">
Nom de la demande.
L'attribut "name=" n'est pas obligatoire.
Cet élément XML doit exister.
<control>
Cet élément XML doit exister.
Automation Engine
<timeout unit="sec">10</timeout>
341
Limitation de l'exécution d'une demande.
L'exécution démarre avec UC4 Automation Engine avant le début de
connexion et se termine lorsque UC4 a accepté l'exécution, ou
lorsqu'une erreur insoluble se produit. L'attribut "unit=" indique l'unité
de l'exécution.
Valeurs autorisées : "1" - "31999"
Par défaut : "10"
Cet élément XML est facultatif.
<control
unit="sec">20</control>
N'est pas encore pris en charge dans la nouvelle version.
</control>
Fin de l'élément <control>
Cet élément XML est facultatif.
Cet élément XML doit exister.
<login>
Début de l'élément pour les informations Login.
Cet élément XML doit exister.
<system>UC4 Automation
Enginename</system>
Nom d'UC4 Automation Engine.
Le nom est utilisé pour vérifier la connexion à UC4 Automation Engine.
Le contenu correspond au paramètre name= du fichier INI d'UC4
Automation Engine auquel UC4.Connect s'est connecté.
Cet élément XML doit exister.
<client>client number</client> Numéro de Client pour la connexion à UC4 Automation Engine.
Cet élément XML doit exister.
<name>user name</name>
Nom de l'utilisateur pour la connexion à UC4 Automation Engine.
Cet élément XML doit exister.
<department>user&rsquo;s
department</department>
Service de l'utilisateur pour la connexion à UC4 Automation Engine.
<passw>password</passw>
Mot de passe de l'utilisateur pour la connexion à UC4 Automation
Engine.
Cet élément XML doit exister.
Cet élément XML est facultatif.
<language>E/D/F</language> Sélection de la langue dans laquelle les messages doivent être
générés.
Si la langue n'est pas spécifiée, les messages sont affichés tels que
définis dans le fichier INI d'UC4.Connect.
Cet élément XML est facultatif.
<clienttype>C</clienttype>
Type de Client.
Si le type est spécifié, seul "C" est autorisé à l'heure actuelle.
Cet élément XML est facultatif.
342
Chapter 7 Analyse du code retour d'application des steps SAP
<clientvers>client
version</clientvers
Version d'UC4.Connect.
Valeurs autorisées : version actuelle
Cet élément XML est facultatif.
</login>
Fin de l'élément XML <login>.
Cet élément XML doit exister.
<script><![CDATA[Script
content]]></script>
Instructions de Script devant être exécutées dans UC4.
</request>
Fin de l'élément XML <request>.
Cet élément XML doit exister.
Cet élément XML doit exister.
</uc-env>
Fin de l'élément XML <uc-env>.
Cet élément XML doit exister.
</apiscriptexec>
Fin de l'élément XML <apiscriptexec>.
Cet élément XML doit exister.
Exemple d'une demande
<apiscriptexec>
<uc-env request="ID1" release="1">
<request name="apiscriptexec">
<control>
<timeout unit="sec">10</timeout>
</control>
<login>
<system>UC4</system>
<client>98</client>
<name>NOM01</name>
<department>DEPARTEMENT01</department>
<passw></passw>
<language>F</language>
<clienttype>C</clienttype>
<clientvers>3.02A</clientvers>
</login>
<script><![CDATA[:SET &RUNID = ACTIVATE_UC_OBJECT(JOBS,EXAMPLE1)]]
></script>
</request>
</uc-env>
</apiscriptexec>
Message XML de la réponse
Elément XML
Description
<apiscriptexec>
Cadre extérieur du message.
Cet élément XML existe toujours.
Automation Engine
<uc-env request="ID"
release="1">
343
L'ID indiqué est extrait de la demande associée.
L'attribut "request=" est toujours affiché.
Cet élément XML existe toujours.
<result name="Reply">
Cet élément XML existe toujours.
<status>reason</status>
Raison de cette réponse à la demande.
A l'heure actuelle, la raison est toujours "completed".
Cet élément XML existe toujours.
<complcode>code</complcode>
Code de résultat que UC4.Connect fournit pour la demande
exécutée. Les codes possibles sont décrits dans le manuel des
messages.
Cet élément XML existe toujours.
<compltext>![CDATA[completion Texte descriptif du code de résultat.
text]]</compltext>
Cet élément XML existe toujours.
<returnvalue>value</returnvalue> Code retour des composants ayant participé à l'exécution (Serveur
UC4, parser XML, etc.).
Cet élément XML existe toujours.
<returntext>![CDATA[return text]] Description accompagnant le code retour.
</returntext>
Cet élément XML existe toujours.
</result>
Fin de l'élément XML <result>.
Cet élément XML existe toujours.
</uc-env>
Fin de l'élément XML <uc-env>.
Cet élément XML existe toujours.
</apiscriptexec>
Fin de l'élément XML <apiscriptexec>.
Cet élément XML existe toujours.
7.16 UC4 et Windows
7.16.1 Démarrage de programmes sous Windows
Attributs
Lors du démarrage de Jobs sous Windows, les paramètres suivants sont importants :
Domaine
Le domaine Windows dans lequel l'Utilisateur est défini.
Nom d'utilisateur
Le nom d'utilisateur Windows.
344
Chapter 7 Analyse du code retour d'application des steps SAP
Mot de passe
Le mot de passe de l'Utilisateur.
BATCH (type d'identification)
Dans les droits de l'Utilisateur, il est possible d'autoriser certains types d'identification pour l'Utilisateur.
Les types d'identification possibles sont "interactive" et "batch". Si "batch" est le seul type autorisé pour
un Utilisateur, alors UC4 ne peut démarrer un Job que dans ce mode ; il faut donc indiquer le paramètre
BATCH.
DESKTOP
Si le Job démarré attend éventuellement des saisies de l'Utilisateur, cette option doit être définie. Le
processus est alors visible pour tout Utilisateur connecté. Il peut exécuter les données requises par
l'Utilisateur.
Si cette option n'est pas indiquée et que le processus attend une indication, il est suspendu et ne peut être
supprimé qu'au moyen du gestionnaire de Tâches.
Les attributs sont définis dans les cartes d'attribut du Job.
Attention !
l
l
l
l
Les attributs sont définis dans les cartes d'attribut du Job.
Tous les paramètres, à l'exception du mot de passe, sont définis dans les attributs du Job.
Le mot de passe est lu dans l'objet Login.
Ces nouvelles possibilités (par rapport à la version 1.10) ne sont à disposition que si le paramètre
"logon=1" est entré dans la section [GLOBAL] du fichier INI de l'Agent. Lorsque l'Agent est démarré
comme service, ce paramètre devrait être défini !
Dépendances du système
Selon le système d'exploitation et le type de démarrage de l'Agent, les dépendances suivantes existent :
Agent
Fichier INI
Utilisateur
BATCH
DESKTOP
Agent sur bureau
logon=0
1.
1. 1. Agent sur bureau
logon=1
2.
2. 2. Agent comme service
logon=1
3.
3. 3. 1. sans importance, le démarrage se fait sur le Bureau avec le nom et les droits de l'Utilisateur
2. est utilisé : l'Utilisateur sur le Bureau doit posséder les privilèges nécessaires (comme l'Utilisateur
système)
3. est utilisé
Attention aux particularités suivantes :
l
Différence entre la connexion interactive et la connexion par Agent Win32 :
L'Agent ne charge pas le profil d'Utilisateur du Job dans la base de données du registre. Cela
signifie qu'un programme dont les données spécifiques à l'Utilisateur sont conservées dans le
Automation Engine
345
registre (par ex. l'Interface Utilisateur enregistre la dernière connexion) ne peut pas y accéder par
l'intermédiaire d'un Job UC4.
l
Chemin de démarrage :
Le chemin de démarrage est un paramètre requis dans UC4 pour CreateProcess ou
CreateProcessAsUser. S'il n'est pas encore indiqué, le Job UC4 hérite du chemin de démarrage de
l'Agent.
De plus, il ne faut pas oublier qu'on peut paramétrer un chemin de démarrage dans la définition de
l'Utilisateur qui apparaît dans la connexion interactive normale, mais qu'il ne peut pas être exploité
au démarrage par UC4 !
Le chemin de démarrage devrait donc toujours être indiqué !
Stratégie pour les Jobs sous Windows
Dans Windows, on fait la distinction entre quatre types de programmes :
1.
2.
3.
4.
Programmes avec Interface Utilisateur graphique (programmes GUI 32 bits ou 16 bits)
Programmes de console 32 bits (basés sur les caractères)
Anciens programmes DOS
Commandes de système d'exploitation (pas vraiment un programme, par ex. DIR, SET, etc.)
Les types 1 et 2 (GUI et programmes de console) doivent si possible être démarrés par la ligne de
commande. Cela présente l'avantage de pouvoir déterminer le code de sortie du programme exact de
UC4.
Les types 3 et 4 (programmes DOS et commandes de système d'exploitation) ne peuvent être démarrés
que par l'intermédiaire d'un fichier BAT. Le Job est bien ou mal terminé par le mécanisme de l'agent Job.
Avant de démarrer le Job par UC4, il faut essayer manuellement le fichier BAT ou la ligne de commande
sur le système cible ! Cela doit également être utilisé si possible par l'Utilisateur sous lequel le Job UC4
sera exécuté ultérieurement.
Dans le cadre de programmes graphiques, des boîtes de dialogue Utilisateur peuvent toujours apparaître.
Dans ce cas, l'option DESKTOP est recommandée, au moins à des fins de test.
Rapport de Job : Le rapport de Job d'un Job Windows représente les Tâches du programme après
STDOUT ou STDERR. Généralement, seuls les programmes de console 32 bits ou la plupart des
programmes DOS génèrent un rapport de Job.
7.16.2 Programmes de test pour l'Agent Windows
Objectif
Etant donné qu'il existe de nombreuses possibilités de démarrer des Jobs ou des programmes sous
Windows, nous fournissons plusieurs programmes de test qui fonctionnent dans les différents modes
de Windows.
Fichiers
Les programmes se trouvent dans le sous-répertoire EXAMPLE de l'Agent Windows
(CD:AGENTS\WINDOWS...).
Les programmes suivants sont fournis :
346
Chapter 7 Analyse du code retour d'application des steps SAP
UCYBTX86C - programme de console 32 bits (fenêtre DOS)
UCYBTX86G - programme GUI 32 bits (Visual C++)
UCYBTX86V - programme GUI 32 bits (Visual Basic)
UCYBTIA64C - programme de console 64 bits (fenêtre DOS)
UCYBTX64C - programme de console 64 bits (fenêtre DOS)
Contrôle des programmes de test
Les programmes de test n'ont pas de fonction à proprement parler. Leur comportement peut être contrôlé
par des paramètres dans les options de démarrage.
/w<n>
attend <n> secondes
/d
Etablir un dialogue (par ex. sélection de fichier)
/m
Message (boîte de message)
/o<n>
Afficher <n> lignes sous cette forme standard (=rapport de Job)
/r<n> Définir le code retour sur <n>
Les paramètres sont traités dans l'ordre d'apparition.
Tous les paramètres ne sont pas possibles pour tous les programmes :
Programme
/w<n>
attendre
/d dialogue
/m boîte de
message
/o<n>
STDOUT
/r<n>
Retcode
UCYBTX86C
oui
oui
oui
oui
oui
UCYBTX86G
oui
oui (sélection de
fichier)
oui
oui
oui
UCYBTX86V
oui (boucle)
oui (sélection de
fichier)
oui
non
oui
UCYBTIA64C
oui
oui
oui
oui
oui
UCYBTX64C
oui
oui
oui
oui
oui
Exemple
UCYBTX86G /w10 /d /r4
Le programme IU à 32 bits est démarré. Celui-ci attend 10 secondes, établit ensuite un dialogue de fichier
(sans effet), définit le code retour sur 4 et se termine.
7.16.3 Objet Job Windows
Lors de l'exécution de Jobs Windows, les processus, tels que le démarrage d'un programme, sont mis
en marche.
L'objet Job Windows regroupe tous les processus d'un Job Windows, ce qui implique les avantages
suivants :
l
l
l
Tous les sous-processus sont également pris en compte pour le calcul du temps CPU.
Le Job Windows se termine une fois que tous les sous-processus ont été exécutés.
En cas d'interruption d'un Job Windows, tous les sous-processus sont également interrompus.
Automation Engine
347
Définissez dans l'onglet de l'hôte d'un Job Windows si celui-ci doit s'exécuter dans un objet Job Windows.
Il est également possible d'enregistrer un paramètre standard dans le fichier INI de l'Agent Windows. La
valeur entrée ici est utilisée par défaut pour tous les Jobs Windows.
[GLOBAL]
;...
useJobObject=1
Dans le rapport du Job Windows, il est possible de voir si celui-ci s'est exécuté avec un objet Job
Windows.
Exemple :
Dans l'onglet de l'hôte d'un Job Windows, le paramètre "Objet Job - Oui" a été sélectionné. L'onglet Script
contient la commande Start "New Window" avec laquelle un nouveau processus est démarré. Le Job
Windows ne s'arrête que lorsque la nouvelle fenêtre est quittée à l'aide de la commande "exit". Celui-ci
reste dans la Fenêtre d'Activités jusque-là, comme le montre l'illustration suivante.
Pour que les fenêtres soient affichées, soit l'option "Afficher le Job sur le Bureau" doit être sélectionnée
dans l'onglet de l'hôte, soit l'Agent Windows ne doit pas s'exécuter comme service.
7.16.4 Rapport des Jobs Windows
Les rapports des Jobs Windows présentent quelques particularités.
348
Chapter 7 Analyse du code retour d'application des steps SAP
Génération du rapport de Job par Script
Dans l'onglet "Windows" spécifique à l'hôte, il est possible de définir si le rapport de Job doit être
enregistré dans la base de données et/ou dans un fichier. En outre, vous pouvez définir que cela ne se
produise qu'en cas d'erreur.
L'option "Sera généré par Script" est utile aux programmes qui enregistrent leur sortie dans un fichier.
Lorsque vous activez ce paramètre, le rapport de Job se compose du contenu de cette sortie.
A chaque exécution d'un Job, un fichier distinct est créé pour le rapport de Job. Utilisez l'attribut
"FILENAME_SYSOUT" pour déterminer son nom tiré du RunID. Le chemin du rapport de Job peut être
spécifié avec la Variable UC4 "UC_EX_PATH_JOBREPORT". Lisez-le donc à l'aide de la fonction de
Script GET_VAR. Vous pouvez ensuite transmettre les deux informations au programme.
Exemple :
:SET &chemin_rapport_Job# = GET_VAR(UC_EX_PATH_JOBREPORT)
:SET &nom_fichier_rapport_Job#= GET_ATT(FILENAME_SYSOUT)
isqlw -S PC1\SQL2000 -d TEST_DB -U sa -i c:\temp\test.sql -o &chemin_
rapport_Job#&nom_fichier_rapport_Job#
Objet Job Windows
Dans le rapport des Jobs Windows, il est possible de voir si celui-ci a utilisé un objet Job Windows. Le
message de fin de l'agent Job est donc différent :
Par ex. : Sans objet Job :
UCMDJP :
*******************************************************************
UCMDJP : ** JOB 26181380 (ProcID:0000005796) ENDED AT 22.07.2004/15:02:10
**
UCMDJP : ** ------------------------------------------------------------**
UCMDJP : ** USED : @ CPU **
UCMDJP :
*******************************************************************
Par ex. : Avec objet Job :
UCMDJP :
*******************************************************************
UCMDJP : ** JOB 26181383 (ProcID:0000005796) ENDED AT 22.07.2004/15:03:09
**
UCMDJP : ** -------------------------------------------------------------
Automation Engine
349
**
UCMDJP : ** USED : 0.188 CPU **
UCMDJP : ** 1154 PAGE FAULTS **
UCMDJP : ** 3 PROCESSES
**
UCMDJP :
*******************************************************************
Rubriques connexes :
Rapport des objets activables
7.16.5 User Account Control dans Windows 2008 et Vista
Si vous désirez exécuter avec des Job UC4 des programmes nécessitant une "Elevation", c'est à dire
des droits supérieurs, choisissez l'option "Connexion comme Utilisateur batch".
L'élévation ne peut pas être exécutée automatiquement si le mode batch n'est pas activé. De plus,
l'utilisateur Windows par lequel le Job est exécuté requiert une autorisation pour la connexion comme Job
batch (panneau de configuration - gestion - directive de sécurité locale).
Le Job est automatiquement doté des droits supplémentaires dont il a besoin. L'Utilisateur doit bien sûr luimême disposer des droits nécessaires dans l'objet Login. Attention, tous les processus du Job UC4 sont
alors exécutés avec ces droits. Si l'Utilisateur ne dispose pas d'un ou plusieurs droits nécessaires, l'Agent
ne peut exécuter tous les processus. Windows interrompt l'action avec l'erreur 740 (elevation required).
7.16.6 Calcul du nombre CPU
Le nombre CPU de l'ordinateur sur lequel l'Agent est exécuté est affiché dans le fichier log et dans la
Supervision système.
Hyperthreading
L'Agent Windows ne peut pas, pour des raisons techniques, déterminer le nombre CPU correct pour
toutes les versions Windows prises en charge lorsque l'ordinateur fonctionne avec hyperthreading. Dans
ce cas, l'Agent propose un nombre CPU inférieur au nombre réel. Les tables suivantes indiquent dans
quelles versions Windows il est possible de déterminer correctement le nombre CPU :
Version Windows
x86
x64
Windows 2003
oui
oui
Windows XP
à partir du Service Pack 3
à partir du Service Pack 3
Windows Vista
oui
oui
Windows 2008
oui
oui
7.16.7 Bibliothèques dans Windows 7
Une remarque importante doit être prise en compte pour l'utilisation d'UC4 pour Windows 7 concernant
la nouvelle fonction "Bibliothèques".
350
Chapter 7 Analyse du code retour d'application des steps SAP
Les bibliothèques dans Windows 7 sont ce qu'on appelle des "dossiers virtuels" avec lesquels des
contenus se trouvant à différents emplacements peuvent être regroupés. Elles représentent donc une
compilation de différents répertoires.
L'accès à ces répertoires virtuels peut se faire via un chemin "Bibliothèques" spécifique (par exemple :
"Bibliothèques\Documents"). Ce chemin n'est toutefois qu'un chemin "relatif", car il n'indique pas
l'emplacement réel et ne peut donc pas être utilisé avec UC4.
Tenez compte de cette remarque, surtout si vous utilisez des Agents sous Windows 7 pour le Transfert
de Fichier.
Pour accéder aux bibliothèques avec UC4, il faut utiliser le chemin absolu. Sous Windows 7, les
bibliothèques sont stockées dans le répertoire suivant :
C:\Users\%Username%\AppData\Roaming\Microsoft\Windows\Libraries\
7.16.8 Agent Windows - Prise en charge du Transfert de
Fichier
Lors de la définition d'un objet Transfert de Fichier, il est possible de faire des saisies supplémentaires
dans l'onglet "Transfert de Fichier" dans le champ "Attributs de fichier".
Il s'agit soit d'attributs de fichier du système d'exploitation, soit d'options supplémentaires exploitées
uniquement par l'Agent. Plusieurs attributs et options doivent être séparés par des virgules.
Attributs de fichier Windows
Les attributs de fichier peuvent être indiqués pour la destination du Transfert de Fichier.
Une substitution des attributs originaux est également possible. Cela signifie que si l'option "Conserver les
attributs originaux" est activée, les attributs à reprendre peuvent tout de même être remplacés (par
exemple, protéger tous les fichiers cibles en écriture).
Avec la valeur "YES", un attribut est appliqué, avec "NO", il est supprimé.
Exemple : ARCHIVE=YES, HIDDEN=NO
Attribut
Description
ARCHIVE
Archive (le fichier a été modifié depuis la dernière sauvegarde)
COMPRESSED
Fichier compressé
ENCRYPTED
Fichier crypté
HIDDEN
Fichier masqué
READONLY
Le fichier est protégé en écriture
SYSTEM
Fichier système
Options supplémentaires
Ces options peuvent être saisies dans le champ "Attributs de fichier" parallèlement aux attributs de fichier
du système d'exploitation. Elles ont une incidence sur le formatage du contenu du fichier. Il ne s'agit pas
d'attributs de fichier. Ces options sont aussi disponibles pour l'Agent UNIX.
Options pour le champ d'attribut source
Automation Engine
l
l
351
reclen - longueur de l'enregistrement (en octets).
nl=mixed - si un caractère CR se trouve à la fin d'une ligne d'un fichier texte, cela peut rendre le
fichier inutilisable sur de nombreux systèmes. La valeur "mixed" permet son élimination
automatique.
Options pour le champ d'attribut cible
l
nl : caractère de séparation des lignes
Valeurs autorisées : "crlf", "lf" (par défaut) et "none"
"crlf" - Retour chariot avec saut de ligne (carriage return and line feed).
"lf" - Saut de ligne (line feed).
"none" - Pas de séparation de ligne.
Exemple : nl=crlf
7.17 UC4 et z/OS
7.17.1 Agent - Interaction entre UC4 et z/OS
L'Agent z/OS interagit avec le système UC4 via une interface TCP/IP.
Il communique dans z/OS avec JES2 ou JES3.
L'Agent z/OS dispose des fonctionnalités suivantes :
l
l
l
l
traitement de Jobs,
exécution de Transferts de Fichiers,
traitement d'Evènements,
CallAPI
Traitement de Jobs
Dans UC4, les Jobs sont définis et gérés comme des objets à l'aide d'onglets. Le JCL se trouve dans
l'onglet Script. Il peut être muni d'une logique complexe à l'aide de scripts d'UC4.
Rubriques connexes : Manuel Utilisateur – Job et Job – Exécution.
Un Job est démarré manuellement dans UC4 au moyen de mécanismes de contrôle comme le Workflow
ou le Schedule.
Un Job exécutable est alors généré dans le UC4 Automation Engine et transféré à l'Agent z/OS par
Transfert de Fichier.
Rubriques connexes : Interne UC4 – Exécution des objets
Dans z/OS, le Job est lu et placé dans le lecteur interne. Le lecteur interne démarre le Job. La surveillance
s'effectue via SSI.
Le Job annonce à l'Agent le début et la fin de l'exécution, lequel transmet à son tour ces informations au
UC4 Automation Engine.
L'Agent surveille à intervalles réguliers le statut du Job. Si un Job est perdu (par ABEND, CANCEL ou
PURGE), ce mécanisme permet de constater la fin. Le code retour du Job est disponible dans UC4.
Le rapport de Job (MSGCLASS), composé des statistiques JES et du rapport de Job complet, est placé
dans le fichier nommé par le UC4 Automation Engine. Si cela est défini dans le Job, l'Agent transfère le
352
Chapter 7 Analyse du code retour d'application des steps SAP
rapport à l'UC4 Automation Engine qui l'enregistre à son tour dans la base de données UC4. Le rapport de
Job est demandé par JES. Il est donc nécessaire d'utiliser une MSGCLASS avec le statut HOLD.
Exécution de Transferts de Fichiers
Dans UC4, les Transferts de Fichiers sont définis et gérés comme des objets à l'aide d'onglets. Ils sont
exécutés avec la conversion de caractères qui y figure, par exemple "IBM_3270_FRANCAIS".
Rubriques connexes : Manuel de l'Utilisateur - Transfert de Fichier
Rubriques connexes : Base de connaissances UC4 et z/OS - Agent - Prise en charge du Transfert de
Fichier
Traitement d'Evènements
Dans UC4, les Evènements sont définis et gérés comme des objets à l'aide d'onglets.
L'Agent OS/390 prend en charge les Evènements de type "système de fichiers" et "console".
Rubriques connexes : Manuel de l'Utilisateur – Evènement
CallAPI
La CallAPI peut être utilisée avec un utilitaire pouvant par exemple être exécuté à partir d'un Job.
Voir : Manuel de l'Utilisateur - CallAPI pour z/OS
7.17.2 Agent z/OS - Prise en charge du Transfert de Fichier
L'Agent z/OS prend en charge toutes les fonctions de Transfert de Fichier comme le transfert de fichiers
texte et binaires ou le transfert de fichier avec des caractères génériques. Les fichiers séquentiels (PS)
peuvent être étendus par l'Agent z/OS, mais les membres d'une bibliothèque (PO) ne peuvent pas l'être.
Lors de la définition d'un objet Transfert de Fichier, il est possible de spécifier dans l'onglet "Transfert de
Fichier" des attributs de fichier pour la destination du Transfert de Fichier. L'attribution par défaut du
système est ainsi chargée.
Lorsque la source correspond à la plate-forme cible, il est possible de reprendre les attributs des fichiers
source. Cela est possible grâce à l'option "Conserver les attributs originaux de fichier" dans l'objet
Transfert de Fichier. Attention : aucune substitution de ces attributs n'est cependant possible pour z/OS !
Dans ce cas, une erreur se produit quand des attributs supplémentaires sont indiqués et quand cette
option est activée.
Il existe deux formats différents pour l'entrée d'attributs de fichier lors de Transferts de fichiers avec z/OS
comme plateforme cible.
Language Environment Format
"Language Environment Format" constitue le format traditionnel. Les attributs de fichier pour les transferts
de fichiers sont déjà indiqués dans cette syntaxe dans les versions plus anciennes d'UC4. Une virgule
permet de séparer plusieurs attributs de fichier et le signe '=' indique l'attribution de valeurs.
Les attributs de fichier suivants peuvent être indiqués :
Automation Engine
l
l
l
l
l
353
recfm= (tous les 27 formats d'enregistrement de OS/390 ainsi que * et A sont valides)
lrecl= (0, chaque chiffre positif jusqu'à 32760 et X pour chaque "Reclen")
blksize= (0, chaque chiffre positif jusqu'à 32760)
space= ([CYL,TRK],(prim,sec,directory))
nl= (crlf (paramètre par défaut dans l'Agent Windows) -> phrases séparées par <cr><lf> (=0d0a) );
lf (paramètre par défaut dans l'Agent Unix) -> phrases séparées par <nl> (=0a) ;
none (aucun séparateur ajouté entre les phrases)).
Exemples
recfm=fb,lrecl=1024,blksize=2048,space=(CYL,(1,1,0))
recfm=fb,lrecl=80
Allocate format
A partir de la version 9.00A, il est possible de définir des attributs pour les Transferts de fichiers avec
l'entrée de la commande ALLOCATE. Plusieurs attributs doivent être séparés par des espaces et les
valeurs se trouvent entre parenthèses juste après les noms des attributs. Le signe '=' est ainsi nécessaire.
Cette syntaxe ne peut cependant être utilisée que pour un nouveau protocole de Transfert de fichier
(Agents source et cible présentent la version 9.00A d'UC4 ou supérieure)!
Les attributs suivants sont ainsi pris en charge :
l
l
l
l
l
l
l
l
l
l
l
l
l
l
DATACLAS
EXPDT
MGMTCLASS
RETPD
RLSE
STORCLAS
UNIT
VOLUME
RECFM
LRECL
BLKSIZE
SPACE (possible uniquement en relation avec CYLINDERS, TRACKS ou BLOCK)
DSORG
ROUND
Vous trouverez une description exacte à ce sujet sur la documentation au sujet de la Commande TSO
ALLOCATE d'IBM.
Exemple
ALLOCATE RECFM(FB) LRECL(1024) BLKSIZE(2048) EXPDT(2010100) SPACE(1,1) CYLS
DIR(10) UNIT(3390) VOLUME(DSK30D,DSK30E)
7.17.3 Classes de messages
Le protocole de Job d'un Job z/OS est enregistré dans le spool JES. Celui-ci se décompose en classes
de messages possédant chacune une désignation à un caractère (soit les lettres A à Z, soit les chiffres
0 à 9). Vous pouvez définir vous-même la formation du protocole de Job et la classe de messages dans
lequel ce dernier est éventuellement redirigé.
L'Agent peut :
354
Chapter 7 Analyse du code retour d'application des steps SAP
l
l
l
l
l
Ecrire la sortie du Job dans la classe de message que vous avez indiquée dans l'objet Job.
Associer la sortie de Job et les statistiques JES (JESMSGLG, JESJCL et JESYSMSG) dans le
protocole de Job.
Lire des classes de messages et les intégrer dans le protocole de Job.
Réacheminer le protocole de Job dans les classes de messages.
Mettre à jour le protocole de Job pour l'imprimer et le supprimer.
Vous pouvez pour cela définir les paramètres en tant que valeur par défaut dans le fichier INI de l'Agent
et dans l'objet Job. Ce dernier est utilisé de manière privilégiée et est donc prioritaire sur la valeur du fichier
INI. Tous les paramètres peuvent également être configurés de manière dynamique dans le script à l'aide
des attributs de Jobs.
Il est recommandé d'entrer dans le fichier INI la configuration la plus souvent utilisée. Les Jobs qui
s'écartent de ces paramètres peuvent être configurés dans leur objet ou à l'aide de leur Script.
Le tableau suivant contient toutes les possibilités de paramétrage des classes de message. Les entrées
de la colonne objet Job portent exactement le même nom que les champs de l'interface de l'onglet "z/OS".
Traitement du
protocole de Job
Objet Job
Paramètre du
fichier INI
Attribut de Job
Etendue
Avec sortie additionnelle
completeJobout=
MVS_
COMPLETEJOBOUT
Sortie du Job
Classe Msg
non disponible
MVS_MSGCLASS
Demande
Récupère le(s) message(s)
suivant(s)
getMsgClass=
MVS_
GETMSGCLASSES
Transfert
Renvoyer la(les) classes(s) de
message vers
routeMsgClass=
MVS_
ROUTEMSGCLASS
Lancement de
l'impression
Libérer
relMsgClass=
MVS_
RELMSGCLASS
Suppression dans le
spool JES
Suppression
JobPurge=
MVS_JOBPURGE
Au niveau Step au sein d'un Job, vous pouvez également indiquer une classe de messages pour, par
exemple, rediriger certains messages et ainsi les filtrer.
Utilisation d'un système de gestion des sorties
Lorsque vous utilisez un système de gestion des sorties, tel que BETA92, vous devez définir certains
paramètres :
1. Indiquez la classe de messages dans laquelle la sortie du Job doit être enregistrée.
2. Il est important que vous laissiez lire ces classes de messages et éventuellement aussi d'autres
classes de messages !
3. Définissez les classes de messages qui sont attribuées au système de gestion des sorties et
laissez le protocole de Job rediriger les messages dans ces classes.
La classe de messages doit correspondre à une classe Write dans certains systèmes de
gestion des sorties, elle n'est sinon pas traitée. En l'occurrence, un writer externe ne doit pas être
connecté à cette classe, sinon celui-ci traitera le protocole de Job.
Automation Engine
355
4. Bien entendu, le protocole de Job ne doit pas être supprimé du spool JES !
Utilisez une classe de messages personnalisée pour UC4.
Dans l'illustration suivante, la redirection du protocole de Job est configurée directement dans le Job. Le
Job écrit sa sortie dans la classe de messages "B". Cette classe et la classe "A" sont lues. Lors de la
redirection, c'est l'ordre qui importe. La classe "A" est redirigée vers la classe "K" et la classe "B" est
redirigée vers la classe "J".
Rubriques connexes :
Job z/OS
Attribut z/OS
7.17.4 Moniteur d'Evènements
Dans UC4, les Evènements sont définis et maintenus en tant qu'objets à l'aide de différents onglets.
Les résultats de type "Console" pris en charge par l'Agent z/OS permettent de surveiller les sorties de
console et de déclencher l'Evènement immédiatement lorsque toutes les conditions définies dans
l'onglet "Console" sont réunies.
Pour ce faire, le moniteur d'Evènements UCXEM25 doit être installé et démarré. Pour le type "Système de
Fichiers", le système vérifie à l'aide de SMF si la condition est réunie et l'Evènement est aussitôt
déclenché.
356
Chapter 7 Analyse du code retour d'application des steps SAP
Moniteur d'Evènements comme Tâche autonome (Started Task)
Il est également possible d'exploiter le moniteur d'Evènements comme Tâche autonome au moyen d'un
fichier INI séparé. Pour ce faire, il est nécessaire de mettre en commentaires le paramètre start= dans le
fichier INI de l'Agent. Après le démarrage du moniteur d'Evènements comme Started Task, celui-ci essaie
d'établir une connexion TCP/IP vers l'Agent. Le moniteur d'Evènements ne se connecte ici qu'avec la
console du LPAR séparé. Pour utiliser les fonctions basées sur SMF, il charge l'exit SMF. S'il n'est pas
possible d'établir une connexion vers l'Agent, ou si cette dernière est perdue en cours d'exécution, le
système tente d'établir à nouveau une connexion dans l'intervalle défini (paramètre connect= de la section
TCP/IP du fichier INI).
Une nouvelle connexion immédiate est possible avec l'instruction de console "MODIFY ...,
EX=<addr>,:<port>. Une nouvelle connexion est également formée lorsque le moniteur d'Evènements est
connecté à un autre Agent. Dans ce cas, une nouvelle connexion est établie et si elle est bien terminée,
l'ancienne connexion peut être fermée.
Le moniteur d'Evènements prend en charge les fonctions de log et de trace. Si les commutateurs de trace
sont modifiés dynamiquement en cours d'exécution, ils sont passés au moniteur d'Evènements. Le
logging du moniteur d'Evènements n'est pas écrit dans la base de données UC4.
Chaque moniteur d'Evènements est démarré avec 2 fichiers :
Fichier VSAM
Il sert d'enregistreur d'Evènements. Les Evènements filtrés sont sauvegardés. L'Evènement n'est
supprimé de ce fichier par le moniteur d'Evènements qu'une fois que le Serveur a confirmé son traitement.
On s'assure ainsi que le moniteur d'Evènements ne perd aucun Evènement et que les Evènements sont
conservés même après un redémarrage.
Fichier séquentiel
Ce fichier contient les Filtres d'analyse afin d'enregistrer pour le moniteur d'Evènements les Filtres
obtenus du Serveur. Si le Filtre d'analyse est modifié, tout le fichier est réécrit. Si le moniteur
d'Evènements est redémarré, il continue de s'exécuter avec ces Filtres (même sans Agent). Une fois la
connexion du moniteur d'Evènements à l'Agent à nouveau établie, il peut obtenir de celui-ci d'autres Filtres
ou les Filtres actuels peuvent également être désactivés.
La fermeture du moniteur d'Evènements peut se faire par la commande de console "STOP" ou
"MODIFY END". Dans l'Agent, il existe la forme de fermeture "MODIFY SHUTDOWN". Tous les
moniteurs d'Evènements disposant d'une connexion TCP/IP avec l'Agent sont alors fermés, puis l'Agent
se ferme lui-même.
Fermeture du moniteur d'Evènements
Utilisez les commandes suivantes pour terminer le moniteur d'Evènements et/ou l'exit SMF manuellement
:
Commande
Description
MODIFY nom du moniteur
d'Evènements,END
Termine le moniteur d'Evènements et l'exit SMF reste actif.
STOP nom du moniteur
d'Evènements
MODIFY nom du moniteur
d'Evènements,SHUTDOWN
Termine le moniteur d'Evènements ainsi que l'exit SMF.
Automation Engine
MODIFY nom de
l'Agent,SHUTDOWN
357
Termine tous les moniteurs d'Evènements ainsi que les exits SMF qui
sont connectés à l'Agent, puis termine l'Agent lui-même.
Lors de l'interruption du moniteur d'Evènements, l'exit SMF reste toujours actif.
Exit SMF
Le moniteur d'Evènements transfère des Evènements à l'UC4 Automation Engine tant qu'il est actif. Pour
qu'aucun Evènement ne soit perdu en cas de fermeture ou d'interruption du moniteur d'Evènements, l'Exit
SMF les enregistre.
Rubriques connexes :
GET_CONSOLE, GET_EVENT_INFO
Evènement
Fichier INI de l'Agent z/OS (Moniteur d'Evènements comme sous-Tâche)
Fichier INI pour le moniteur d'Evènements autonome
Agent - Interaction entre UC4 et z/OS
Installation de l'Agent pour z/OS
7.17.5 Moniteur de Job externe
Le fonctionnement du moniteur de Job externe consiste à identifier les Jobs qui ont été démarrés par un
autre système de planification (par exemple : OPC, CA7). La réaction correspondante dans le système
UC4 passe par le moniteur d'Evènements et l'Agent UC4.
Le moniteur de Job externe est utilisé comme Started Task autonome.
Fonctionnement du moniteur de Job externe
La réaction aux Evènements externes se fait par le moniteur d'Evènements.
Le moniteur d'Evènements permet d'identifier des Evènements de console, des Evènements
automatiques de système de fichier et la fin des Jobs z/OS. Le moniteur d'Evènements possède entre
autres la fonction de réagir à la génération de fichiers externes. Si une fin de Job externe est identifiée avec
le moniteur de Job externe, un fichier est créé dont la réaction passe par le moniteur d'Evènements. Ce
dernier communique avec le système UC4 via l'Agent et déclenche un objet Evènement.
Pour que toutes les fins de Job n'entraînent pas une action, un fichier de filtrage permet de déterminer à
quels Jobs ou steps il faut réagir. Si la fin d'un Job concerné est identifiée, un fichier temporaire est créé
par le moniteur d'Evènements. Comme la génération du fichier ne sert qu'à créer un enregistrement SMF
auquel le moniteur d'Evènements réagit, le fichier peut ensuite être supprimé.
Veuillez noter que la création et la suppression de fichiers génèrent des saisies dans le catalogue de
jeu de données. Ce dernier doit donc être régulièrement réorganisé.
358
Chapter 7 Analyse du code retour d'application des steps SAP
La fonctionnalité de reconnaissance de Job externe est possible au sein d'un Sysplex lorsqu'une instance
du moniteur d'Evènements et du moniteur de Job externe fonctionne sur chaque LPAR (partition locale).
Chaque LPAR dispose de son propre sous-système SMF qui n'est pas compatible avec Sysplex. L'Agent
ne nécessite aucun SMF et fonctionne donc à l'échelle de Sysplex. Le moniteur de Job externe (EJM)
n'établit aucune connexion directe au moniteur d'Evènements (EM), mais lui signale la fin d'un Job par la
création d'un fichier. Les moniteurs d'Evènements envoient les données à l'Agent z/OS sur l'ensemble du
LPAR.
Automation Engine
359
Exit SMF
Les Evènements et informations du moniteur de Job externe doivent être écrits sur un Exit SMF dans les
CADS comme pour le moniteur d'Evènements. Cette Tâche prend en charge de nouveaux exits SMF
(UCAEXJM). Cet exit se comporte comme l'exit SMF du moniteur d'Evènements, mais il collecte des
enregistrements de type 30. Le module exit SMF est automatiquement chargé au démarrage du module
EJM. L'exit SMF continue de fonctionner et collecte des Evènements même si l'EJM a été arrêté. Si un
Job saisi dans le fichier de filtrage se termine entre temps, un message s'écrit dans le fichier log.
Le programme existant CADSDEL peut être utilisé comme système de récupération d'urgence pour
l'EJM.
Si vous utilisez un fichier de filtrage avec le même contenu sur plusieurs LPAR, des complications
peuvent se produire. Un problème survient lorsque des Jobs portant le même nom se terminent en même
temps sur différents LPAR. Dans ce cas, le système essaie de créer en parallèle des fichiers portant le
même nom, ce qui génère une erreur. Mais la probabilité qu'une telle erreur se produise est très faible. Seul
un message d'erreur s'inscrit dans le fichier log et l'utilitaire continue de fonctionner.
Fichier de filtre
Le fichier de filtrage de l'EJM est nécessaire pour pouvoir sélectionner les Jobs qui se terminent. Les
critères de filtre sont immédiatement vérifiés lorsque les Evènements se produisent.
Exemple : Un fichier de filtrage contient une condition sur un Step/ProcStep spécifique. La fin de ce step
est identifiée immédiatement, et non à la fin du Job.
Le fichier de filtrage contient les critères de sélection suivants :
l
l
Nom de Job (partiellement / entièrement qualifié)
Nom de step (partiellement / entièrement qualifié)
360
Chapter 7 Analyse du code retour d'application des steps SAP
l
l
l
Nom de ProcStep (partiellement / entièrement qualifié)
Fin du Job
Code retour
Le fichier de filtrage doit présenter les attributs CDB RECFM (format d'enregistrement) =FB, LRECL
(longueur d'enregistrement) =85 et BKKSIZE (taille de bloc) =5120. Chaque définition de filtre dans le
fichier correspond à une ligne de 85 caractères.
Pour recharger manuellement le fichier de filtrage, utilisez la commande suivante :
MODIFY <nom de la STC>, RELOAD
(STC = Started Task)
Critère de filtrage
Positions d'une ligne
Description
Nom de Job
1-8 (longueur 8)
Filtre sur le nom du Job dans z/OS.
Les caractères génériques "*" et "?" sont
autorisés.
Nom de step
9-16 (longueur 8)
Facultatif
Filtre sur le nom du step du Job dans z/OS.
Les caractères génériques "*" et "?" sont
autorisés.
Nom du ProcStep
17-24 (longueur 8)
Facultatif
Filtre sur le nom du ProcedureStep du Job
dans z/OS.
Les caractères génériques "*" et "?" sont
autorisés.
Fin du Job
25 (longueur 1)
" " -> Vérification immédiate à la fin du
Step/ProcStep
"X" -> Vérification seulement à la fin du Job,
pas de vérification RC
"N" -> Vérification à la fin du Job et lorsque le
Job se termine normalement (c'est-à-dire
avec un code retour compris entre 0 et 4095)
"A" -> Vérification à la fin du Job et lorsque le
Job se termine anormalement (c'est-à-dire
avec un code retour compris entre 4096 et
12287)
Code retour du Job
26-41 (longueur 16)
Facultatif
Filtre sur le code retour du Job (Condition
Codes, User Abends et System Abends). Si
vous voulez indiquer plusieurs codes retour,
il faut les séparer avec ";" ou ",". Les
domaines sont formulés à l'aide de "-".
Nom du fichier
42-85 (longueur 44)
Nom de fichier du fichier à créer
temporairement pour la transmission du
message.
Exemple de structure d'un fichier de filtrage :
JOBTEST STEP3* 0-100;S0C4 JOB.ZUC800A1.EJM.TRIGGER.TEMP01
JOBF* STEP01 N0,4,8,12-16 JOBF.ZUC800A1.EJM.TRIGGER.TEMP02
JOBTEST2DUMMY 0-4096 JOB.ZUC800A1.EJM.TRIGGER.TEMP03
JOBTEST2DUMMY2 N0-4096 JOB.ZUC800A1.EJM.TRIGGER.TEMP04
Automation Engine
361
Les lignes de filtrage sont connectées au moyen d'une liaison OU. Les lignes sont donc traitées et
vérifiées de manière séquentielle. Si une sélection est trouvée, le fichier correspondant est créé.
Rubriques connexes :
Moniteur d'Evènements
Structure du fichier de configuration d'un moniteur de Job externe
7.17.6 Exit SMF
Le sous-système SMF recueille et journalise les informations sur le système et ses Jobs.
L'Agent z/OS ainsi que ses moniteurs d'Evènements utilisent les enregistrements SMF dans les
domaines suivants :
l
l
Evènements de système de fichiers automatiques
l
Prise en charge des Generation Data Groups
Reconnaissance et analyse de la fin du Job
Parmi les prérequis pour son utilisation, notons que les exits système appropriés doivent être autorisés et
que le module SMF doit journaliser certaines entrées. L'Agent et les moniteurs d'Evènements contiennent,
dans leur fichier INI, plusieurs paramètres concernant SMF. Dans les descriptions des fonctionnalités
citées plus haut, vous trouverez de plus amples informations sur la configuration exacte.
Généralités
Le moniteur d'Evènements surveille les Evènements de console et de système de fichiers et les transmet
à l'UC4 Automation Engine. Les objets Evènement vous permettent d'y réagir. Le suivi des Evènements
n'est effectué que tant que le moniteur d'Evènements est actif. Les Evènements sont recueillis via un exit
SMF sur la base des enregistrements SMF. Cet exit est capable de faire office de tampon pour les
Evènements, même lorsque le moniteur d'Evènements n'est pas disponible. Après un nouveau démarrage
du moniteur d'Evènements, l'exit SMF lui transmet les Evènements recueillis. Cela permet de ne perdre
aucun enregistrement SMF, si tant est que le tampon ne soit pas plein. Il est possible de régler la taille du
tampon.
Le System Management Facility (SMF) est également utilisé pour d'autres domaines, par exemple la
reconnaissance des fins de Job et les GDG.
L'illustration suivante vous montre les interactions entre l'Agent, le moniteur d'Evènements et l'exit SMF.
362
Chapter 7 Analyse du code retour d'application des steps SAP
L'exit SMF enregistre les Evènements dans un Common Area Data Space (CADS). Le taux de
remplissage du CADS est indiqué en couleur sur la console z/OS :
l
l
25 %, 50 % et 75 % en blanc
80 %, 85 %, 90 %, 95 % et 100 % en rouge
Attention : l'exit SMF n'enregistre aucun autre Evènement lorsque le CADS est entièrement plein.
L'entrée d'Evènement la plus ancienne n'est donc pas remplacée. Dès que le CADS a de nouveau de
l'espace et que l'exit SMF est capable de transmettre des Evènements au moniteur d'Evènements, des
Evènements sont à nouveau enregistrés dans le CADS.
La valeur par défaut pour le CADS est de 10 Mo, ce qui suffit à l'enregistrement d'environ 65 000
Evènements.
Attention : aucun Evènement se produisant durant un démarrage, un arrêt ou une phase IPL n'est
recueilli. Les Evènements peuvent être traités dès que le moniteur d'Evènements est démarré.
Configuration
Exécutez les étapes suivantes pour mettre en marche l'exit SMF :
l
l
Vérifiez dans votre système z/OS que le sous-système SMF journalise les enregistrements SMF
du type 14, 15, 30 et 64 et que les exits IEFU83 ainsi que IEFU84 sont actifs.
L'exit SMF peut s'exécuter comme sous-Tâche de l'Agent ou du moniteur d'Evènements. En
fonction de cela, il faut adapter le fichier INI de l'Agent ou celui du moniteur d'Evènements comme
suit :
Entrez une désignation pour l'exit SMF dans la section (CONSOLE) pour le paramètre
ModuleName=.
Automation Engine
363
Définissez la taille du CADS avec le paramètre SMF_Buffersize=, qui se trouve également dans la
section (CONSOLE). La valeur par défaut est de 10 Mo.
l
Démarrez le moniteur d'Evènements.
Démarrage du moniteur d'Evènements
Utilisez la commande suivante pour démarrer le moniteur d'Evènements ainsi que l'exit SMF :
START nom du moniteur d'Evènements
Fermeture du moniteur d'Evènements
Utilisez les commandes suivantes pour terminer le moniteur d'Evènements et/ou l'exit SMF manuellement
:
Commande
Description
MODIFY nom du moniteur
d'Evènements,END
Termine le moniteur d'Evènements et l'exit SMF reste actif.
STOP nom du moniteur
d'Evènements
MODIFY nom du moniteur
d'Evènements,SHUTDOWN
Termine le moniteur d'Evènements ainsi que l'exit SMF.
MODIFY nom de
l'Agent,SHUTDOWN
Termine tous les moniteurs d'Evènements ainsi que les exits SMF qui
sont connectés à l'Agent, puis termine l'Agent lui-même.
Lors de l'interruption du moniteur d'Evènements, l'exit SMF reste toujours actif.
Démarrage à chaud
Lorsque le moniteur d'Evènements est terminé manuellement avec "END", ou qu'il s'interrompt, l'exit SMF
reste actif. Après le redémarrage du moniteur d'Evènements, celui-ci peut à nouveau se connecter à l'exit
SMF et traiter les Evènements qui se sont accumulés entre-temps.
Attention : les modifications des paramètres ModulName= et SMF_Buffersize= du fichier INI n'ont
aucun effet. Leurs valeurs ne seront lues qu'au prochain démarrage de l'exit SMF.
Situations d'exception
En temps normal, pour terminer l'exit SMF, vous devez utiliser la commande "SHUTDOWN" pour terminer
le moniteur d'Evènements. Le CADS est ainsi supprimé automatiquement. Vous pouvez également
terminer manuellement l'exit SMF :
SET PROG,EXIT,DELETE,EXITNAME=nom de l'exit SMF,MODULNAME=nom du module UC4
Attention : ne pas supprimer le CADS ce faisant !
Utilisez l'utilitaire CADSDEL pour supprimer le contenu du CADS :
Ouvrez le fichier log du moniteur d'Evènements. La ligne de log suivante contient les paramètres STOKEN
et TCBTOKEN requis pour terminer l'exit SMF :
364
Chapter 7 Analyse du code retour d'application des steps SAP
-UC4 STOKEN=8000160200001328;TCBTOKEN=00000004000000010000000000FD2300
De plus, il faut spécifier le nom du système UC4 ainsi qu'une description d'Eyecatcher. Les deux valeurs
sont spécifiées dans le fichier INI du moniteur d'Evènements :
l
l
system= contient le nom du système UC4
CADSEyeCatcher= contient la description d'Eyecatcher
Exécutez l'utilitaire CADSDEL avec les quatre paramètres cités :
//CADSDEL JOB ####,PROGRAMMER,NOTIFY=&SYSUID,MSGLEVEL=(1,1)
//CADSDEL EXEC PGM=CADSDEL,
// PARM='8000160200001328 00000004000000010000000000FD2300 UC4PROD
UC4EYEC'
//STEPLIB DD DISP=SHR,DSN=<UC4.LOADLIB>
Vérifiez avec la commande z/OS D A,*MASTER* si le CADS a été supprimé.
Scénario d'exemple
Deux LPAR sont présentés dans Sysplex :
l
l
Dans le premier se trouvent un Agent et un moniteur d'Evènements. Tous les deux fonctionnent en
tant que Started Tasks indépendantes. L'exit SMF est une sous-Tâche du moniteur d'Evènements.
Dans le deuxième, un moniteur d'Evènements fonctionne également avec un exit SMF comme
sous-Tâche.
LPAR1
LPAR2
Agent : MVS01
Moniteur d'Evènements : EM01
Exit SMF : SMFE01
Moniteur d'Evènements : EM01
Exit SMF : SMFE01
Les configurations suivantes doivent être exécutées dans le LPAR1 :
l
Installez un Agent dans le LPAR1 en suivant les instructions d'installation. Etant donné que le
moniteur d'Evènements doit fonctionner comme Started Task indépendante avec l'exit SMF, il faut
mettre en commentaire l'ensemble de la section (CONSOLE) du fichier INI de l'Agent.
;(CONSOLE)
;start=
;buffersize=
;mscope=
;smfwrite=
;ModulName=
;smfStepFilter=
;smfJob=
;SMF_Buffersize=
;ABENDNUM=
l
Installez le moniteur d'Evènements dans le LPAR1 en tant que Started Task indépendante. Vous
en trouverez une description également dans les instructions d'installation. Etant donné que l'exit
SMF est une sous-Tâche du moniteur d'Evènements, la section (CONSOLE) du fichier INI du
moniteur d'Evènements doit être adaptée :
(CONSOLE)
mscope=*
smfwrite=1
ModulName=SMFE01
Automation Engine
365
smfStepFilter=0
SMFJob=0
SMF_Buffersize=10
Les configurations suivantes doivent être exécutées dans le LPAR2 :
l
Installez le moniteur d'Evènements dans le LPAR2 en tant que Started Task indépendante. Etant
donné que l'exit SMF est également ici une sous-Tâche du moniteur d'Evènements, la section
(CONSOLE) du fichier INI du moniteur d'Evènements doit être adaptée :
(CONSOLE)
mscope=*
smfwrite=1
ModulName=SMFE01
smfStepFilter=0
SMFJob=0
SMF_Buffersize=10
Rubriques connexes :
Moniteur d'Evènements
7.17.7 Evènement de système de fichiers automatique
Outre la surveillance courante du système de fichiers, l'Agent z/OS prend également en charge la
vérification de la fermeture des fichiers. L'Evènement est déclenché lorsque le fichier est fermé
conformément aux conditions définies.
Il vous est possible de ne filtrer dans l'objet Evènement qu'en fonction du nom de fichier ou alors d'indiquer
une série de critères de filtrage. Ces derniers comprennent, outre le nom de fichier, le nom du Job ayant
traité le fichier et son code retour.
Lors du déclenchement de l'Evènement, le !Script est exécuté. La fonction script GET_EVENT_INFO
vous fournit des informations sur le fichier.
Attention : l'administrateur UC4 doit définir le paramètre smfwrite=1 dans le fichier INI de l'Agent ou du
moniteur d'Evènements. Vérifiez dans votre système z/OS que le sous-système SMF autorise les exits
de système IEFU83 et IEFU84. Les entrées 14, 15, 30 et 64 doivent être journalisées.
Attention : les Evènements de système de fichiers automatiques ne sont pas pris en charge sur les
membres PDS !
Déroulement
1.
2.
3.
4.
Créez un objet Evènement de type "système de fichiers".
Ouvrez-le et passez à l'onglet "Système de fichiers".
Sélectionnez un Agent z/OS.
Dans le contrôle de périodicité, un élément de menu supplémentaire nommé "Automatiquement"
s'affiche. Sélectionnez-le.
366
Chapter 7 Analyse du code retour d'application des steps SAP
Nom de fichier comme filtre
1. Dans le champ Chemin, saisissez un nom de fichier avec ou sans caractère générique, selon que
vous souhaitiez surveiller un fichier donné ou plusieurs fichiers.
2. Avec l'option "Evènement de Démarrage", vous pouvez définir que l'existence du fichier soit
vérifiée lors de l'activation de l'objet Evènement. Si le fichier est disponible, un Evènement est
également déclenché.
3. Entrez, dans l'onglet "!Script", l'élément de script devant être exécuté lorsque l'Evènement est
déclenché. Utilisez la fonction script GET_EVENT_INFO.
4. Enregistrez l'objet Evènement et démarrez-le dès que la surveillance du fichier doit démarrer.
Plusieurs critères de filtrage
1. Créez un fichier contenant les critères de filtrage sur le LPAR sur lequel s'exécute l'Agent. Il doit
suivre un certain format décrit dans le tableau ci-dessus.
2. Dans le champ Chemin, spécifiez le nom de ce fichier de filtrage au format suivant : *file
(DSNAME)
Exemple : *file(SGD.PROD.MASSFILTER)
Les caractères génériques ne sont pas autorisés dans le DSNAME.
3. Entrez, dans l'onglet "!Script", l'élément de script devant être exécuté lorsque l'Evènement est
déclenché. Utilisez la fonction script GET_EVENT_INFO.
Attention : le !Script ne doit pas être exécuté lorsque vous indiquez un objet à démarrer dans le
fichier de filtrage !
4. Enregistrez l'objet Evènement et démarrez-le dès que la surveillance du fichier doit démarrer.
Critère de filtrage
Automation Engine
367
Le moniteur d'Evènements est également capable de prendre en compte plusieurs critères de filtrage lors
d'un message portant sur la fermeture de fichier. De cette façon, l'Evènement est uniquement déclenché
lorsque, par exemple, un certain Job a traité le fichier ou lorsqu'un code retour spécial se produit.
Les critères de filtre sont enregistrés dans un fichier distinct. Ce dernier contient un Filtre d'analyse. Si
plusieurs Filtres d'analyse correspondent lors d'un Evènement, par exemple parce qu'il existe des
recoupements entre les critères de filtrage, un Evènement est déclenché par ligne.
Le fichier de filtrage doit contenir les attributs DCB RECFM=FB, LRECL=512 et BLKSIZE=5120.
Chaque ligne du fichier de filtrage fait 307 caractères maximum et se décompose dans les domaines
suivants :
Critère Caractères Description
de
filtrage
Nom
du
fichier
1 à 81
Nom
de Job
82 à 89
Fin du
Job
90
Filtre sur le nom de fichier
Les noms DS partiellement et entièrement qualifiés y compris les membres PDS
et GDG sont pris en charge.
Filtre sur le nom du Job en z/OS qui a fermé le fichier.
Les caractères génériques "*" et "?" sont autorisés.
Attente de la fin du Job
Valeurs autorisées : " ", "X", "N" ou "A"
" " : la fermeture du fichier déclenche immédiatement l'Evènement. Le système
n'attend pas la fin du Job.
"X" : la fermeture du fichier déclenche l'Evènement uniquement à la fin du Job.
Le code retour n'a pas d'importance.
"N" : l'Evènement est déclenché si le Job se termine normalement, c'est-à-dire
avec un code retour compris entre 0 et 4095.
"A" : l'Evènement est déclenché si le Job se termine anormalement, c'est-à-dire
avec un code retour compris entre 4096 et 12287.
Le critère de filtrage "Code retour du Job" vous permet de définir précisément
les codes retour attendus.
Lors de l'analyse de la fin de Job, l'Agent se base uniquement sur les
enregistrements SMF de la fin de Job ou se base également sur ceux des
fermetures STEP. Dans le premier cas, il est uniquement possible de faire la
différence entre les fins de Job normales et anormales. La définition des codes
retour STEP est plus précise. Le moniteur d'Evènements détermine ainsi la
valeur la plus élevée.
L'administrateur UC4 peut définir avec le paramètre smfStepFilter= du fichier
INI du moniteur d'Evènements si seule la fin de Job ou également les fermetures
STEP doivent être prises en compte lors du contrôle du code retour.
368
Chapter 7 Analyse du code retour d'application des steps SAP
Code
retour
du Job
91 à 106
Filtrage du code retour du Job (Condition Codes, User Abends et System
Abends).
Vous pouvez indiquer les valeurs identiques à celles dans z/OS ou selon la
syntaxe habituelle d'UC4.
Si vous voulez indiquer plusieurs codes retour, il faut les séparer avec ";" ou ",".
Les domaines sont formulés à l'aide de "-".
Action
107
Action devant suivre l'Evènement
Valeurs autorisées : "Y" et "N" (valeur par défaut).
"Y" : l'objet que vous indiquez dans le domaine suivant est exécuté à la place du
!Script.
"N" : aucune exécution de l'objet éventuellement entré ne se produit.
Objet
108 à 307
Nom de l'objet qui doit être exécuté.
Vous pouvez, par exemple, enregistrer ici un objet Job.
Attention : le contenu du !Script n'est pas exécuté ! En revanche, l'objet
indiqué ici est activé.
Dans l'exemple suivant, la largeur de 307 caractères ainsi que le nombre précis de caractères n'ont pas
été respectés en raison d'un manque de place.
DEV.DS1
DEV.DS1
UC4.D*.*LIB
SYS1.PARMLIB
TEST.S62*.T*
JOBA
JOBB
TEST2
A
A
N
S806
0-12;16-18
TEST1
X
11-17;S806
Y
Y
CALL.ADMIN
GS.FIN
Au démarrage de l'objet Evènement, l'Agent lit le fichier de filtrage et avertit automatiquement les
moniteurs d'Evènements. Lors de la modification des critères de filtrage, vous devez redémarrer l'objet
Evènement concerné ou charger à nouveau le fichier de filtrage avec l'instruction MODIFY.
Syntaxe :
MODIFY nom de l'Agent STC,FEVNT=nom du fichier de filtrage
Exemple :
MODIFY UC600T1,FEVNT=UC600T.FILTER1
En option, vous pouvez définir un objet devant être activé comme réaction à l'Evènement survenu. En
l'occurrence, l'Agent enregistre toutes les informations que vous pouvez lire à l'aide des mots clés dans
l'objet Evènement avec la fonction script GET_EVENT_INFO, dans le cache. L'objet activé est ainsi
capable de déterminer les données à l'aide de l'instruction de script :READ. Comme noms de Variable, il
faut indiquer les mots clés.
Exemple :
:SET &NOM DE FICHIER# = GET_EVENT_INFO (FILENAME)
:READ &FILENAME#,,
Rubriques connexes :
GET_EVENT_INFO
Moniteur d'Evènements
Automation Engine
369
7.17.8 Prise en charge de GDG
La plate-forme UC4 Automation prend également en charge l'utilisation de Generation Data Groups
(GDG). Vous pouvez utiliser ce type de traitement de fichiers dans les objets d'Evènement de système
de fichiers et dans l'élément de script GET_EVENT_INFO.
Evènement de système de fichiers
Ce type d'objet offre, outre la fonction standard de vérification des valeurs de système de fichiers, la
possibilité de déclencher un Evènement lorsqu'une génération d'une GDG est fermée. Pour ce faire,
saisissez un hôte z/OS dans l'onglet "Evènement de Système de Fichiers", puis sélectionnez l'option
"Automatique" dans le contrôle de périodicité de l'onglet Evènement.
Lorsque vous saisissez GDG(+1), le système attend la fermeture d'une nouvelle génération. Il s'agit de
la règle générale. Pour que le système attende la fermeture de la génération actuelle, il est possible de
saisir pour GDG +/-0 (+0, +00, +000, -0, -00, -000).
Exemple :
COMPTE DE REMUNERATION Nom GDG
DSNAME=COMPTE DE REMUNERATION(0) Generation Dataset actuel
DSNAME=COMPTE DE REMUNERATION(-1) Generation Dataset de la semaine précédente
DSNAME=COMPTE DE REMUNERATION(-2) Generation Dataset de l'avant derrière semaine.
Elément de script GET_EVENT_INFO
Cette fonction script permet notamment de déterminer le nom d'une génération qui peut ainsi être modifié.
Extrait d'un exemple :
:SET &NOMDEFICHIER# = GET_EVENT_INFO (FILENAME)
:SET &HND# = PREP_PROCESS_FILE ("MVSHOST", &NOMDEFICHIER#)
Configuration
Plusieurs paramètres sont requis pour que vous puissiez utiliser GDG dans votre système UC4 :
l
Activez le paramètre smfwrite= dans le fichier INI de l'Agent z/OS.
(CONSOLE)
start=UCXEM25
smfwrite=1
l
l
Activez les modules exit IEFU83 et IEFU84.
Vérifiez dans votre système z/OS que les entrées 14, 15, 30 et 64 sont bien journalisées.
Rubriques connexes :
Evènement de système de fichiers
GET_EVENT_INFO
7.17.9 Reconnaissance et analyse de la fin du Job
L'Agent peut également utiliser les enregistrements SMF pour la reconnaissance de la fin du Job ou des
fermetures STEP
370
Chapter 7 Analyse du code retour d'application des steps SAP
Activez cette fonctionnalité dans le fichier INI de l'Agent ou du moniteur d'Evènements si vous les
exploitez en tant que Started Task autonome :
(CONSOLE)
SMFJob=1
Par défaut, l'informateur de Job est utilisé pour la reconnaissance de fin de Job. Adaptez donc également
la Variable d'Agent UC_EX_JOB_MD se trouvant dans la section (VARIABLES) du fichier INI de l'Agent.
Remplacez le composant "UCXJM25M" par "UC4START" et redémarrez l'Agent.
(VARIABLES)
UC_EX_JOB_MD=UC4START
L'utilisation de cette fonctionnalité présente entre autres avantages celui d'évaluer le Job à l'aide des
codes retour des STEP de Job. Dans l'objet Job, vous pouvez définir si le code retour le plus élevé ou celui
ayant été renvoyé en dernier pour la fin du Job doit être pris en compte.
Vérifiez dans votre système z/OS que le module SMF journalise bien les entrées 30.
Lorsque les Jobs avec WLM dans SYSPLEX sont répartis, un EM doit être énoncé sur chaque LPAR
pour que la reconnaissance fonctionne.
Attention : le changement entre les deux types d'informateurs de Job ne doit avoir aucune influence sur
les Jobs déjà actifs ou générés. Le message de Job ne fonctionne pas pour ces Jobs et ils obtiennent le
statut final ENDED_VANISHED. Malgré le statut final, les Jobs se sont déroulés correctement, seul le
message de fin n'a pas pu être envoyé à l'Agent. Avant le changement de type d'informateur de Job, il faut
donc terminer tous les Jobs du système.
Rubriques connexes :
Moniteur d'Evènements
7.17.10 Codes retour des Jobs z/OS
L'Agent journalise dans le rapport d'activation du Job toutes les erreurs qui se sont produites. En outre, il
définit un code retour en fonction de l'exécution du Job. Dans l'objet Job, vous pouvez décider dans
l'onglet Exécution à partir de quel code retour le Job doit être interrompu.
Au lieu d'un seul code retour, vous pouvez également définir des plages de valeur pour chacun des
steps. L'Agent compare le résultat de l'exécution de step à la liste des steps que vous avez entrée.
Dans z/OS, on distingue trois types de codes retour : Condition Code, User Abend et System Abend.
L'Agent utilise des tranches de numéros de 4 ko chacune pour attribuer les codes retour.
Type de code retour
z/OS
UC4
Condition Code
0 à 4095
0000 - 0FFF (0 à 4095)
User Abend
U0000 à U4095
1000 - 1FFF (4096 à 8191)
System Abend
S000 à SFFF
2000 - 2FFF (8192 à 12287)
Attention : le code retour doit être entré comme valeur décimale dans l'onglet "Exécution" de l'objet
Job ! Les User et System Abends doivent donc être convertis en valeurs décimales.
Exemple :
Automation Engine
371
Le code retour SB37 indique que le volume est plein lors de l'écriture d'un fichier. La valeur décimale
correspondante est 11063.
Rubriques connexes :
Onglet Exécution
7.17.11 Exit JCL
Lors de l'exécution de Jobs z/OS, vous pouvez utiliser vos propres exits JCL. Il s'agit là d'un module
permettant de modifier le Job généré avant son exécution.
Créez les Jobs z/OS comme d'habitude dans UC4. Au démarrage, le Job généré est envoyé à l'Agent.
Celui-ci procède encore à quelques compléments, puis exécute le Job dans le système cible. Lors de
l'utilisation de l'exit JCL, l'Agent appelle le module défini avant son exécution. Il est ainsi possible de
modifier ultérieurement le JCL dans z/OS. Vous pouvez rajouter des lignes JCL, les modifier ou les
analyser et ainsi, par exemple, empêcher le démarrage de certains programmes.
Dans le dossier de livraison de l'Agent z/OS, vous trouverez un exemple de module, dans le fichier nommé
uc4jcle.asm, qui insère des lignes de commentaire. Il contient également une description de l'utilisation du
module.
L'exit JCL peut être activé individuellement pour chaque Agent z/OS.
Configuration
l
Entrez dans le fichier INI de l'Agent z/OS le nom de votre module d'exit JCL et définissez
également la taille du domaine de sortie.
(Exit JCL)
name=Nom du module
maxJclRecords=1000
l
l
Le module est chargé lors du démarrage de l'Agent. Copiez-les soit dans la bibliothèque de
chargement (Loadlibrary) ou étendez la définition STEPLIB pour l'Agent avec la bibliothèque avec
l'exit JCL.
Une fois ces précautions prises, démarrez l'Agent.
Rubriques connexes :
Fichier INI
7.17.12 Include MVS.JOBMD_DEFINITIONS
Pour que l'informateur de Job puisse ouvrir une connexion TCP/IP, il est important de marquer les
instructions DD correspondantes dans l'objet Include, sinon les Jobs se mettent dans le statut
ENDED_VANISHED.
L'adaptation de l'objet Include MVS.JOBMD_DEFINITIONS n'est nécessaire que si le MVS ou le
Language Environment Resolver ne fonctionne pas correctement.
372
Chapter 7 Analyse du code retour d'application des steps SAP
Créez un objet Include du nom de MVS.JOBMD_DEFINITIONS dans le Client système 0000 pour éviter
cette situation. Vous pouvez entrer les instructions DD dans celui-ci. Vous trouverez les instructions
exactes dans la Started Task du TCP/IP.
Ex. :
//SYSTCPD DD DSN=TCPIP.SYSTSMS.TCPPARMS(DT20OEDA),DISP=SHR
//PROFILE DD DSN=TCPIP.SYSTSMS.TCPPARMS(DT20VIPA),DISP=SHR
L'Include est appelé lors de l'exécution d'un Job dans l'en-tête. Il s'agit d'un objet nommé HEADER.MVS
qui est fourni d'office dans le Client système 0000.
:INC MVS.JOBMD_DEFINITIONS ,nofound=ignore
Automation Engine
373
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.
374
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
375
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.
376
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
377
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.
378
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
379
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.
380
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
381
Fuseau Horaire
Définit l'heure locale. Egalement un type d'objet distinct dans UC4.