par Paul Morris - Mis en ligne le 6/07/2005 - Publié en Octobre 2004
Apprenez à utiliser un espace utilisateur, à le remplir de données, à extraire des
enregistrements, et bien plus
Dans la 1ère partie de cet article
(iSeries News février 2004 ou www.itpro.
fr), nous avons examiné deux programmes
ILE RPG - un qui appelait des
API en utilisant une PLIST et un qui les
appelait en utilisant des appels prototypés
- pour voir en quoi les programmes
différaient. Dans cette 2e
partie, nous continuons à nous intéresser
aux API. Nous verrons comment
employer un espace utilisateur, le remplir
avec des données, en extraire des
enregistrements, et utiliser d'autres
API ...
Travailler avec des API, deuxième partie

Un espace utilisateur est une zone de
stockage non structurée, ressemblant
à un grand fichier PC, sans aucun format
d’enregistrement donnant du sens
aux données. Bien que le stockage soit
non structuré, les données qui y sont
placées peuvent avoir une structure
(cela émergera quand nous examinerons
le programme exemple). Les API
peuvent créer, supprimer, remplir et
lier des espaces utilisateur. Et, avec un
peu d’aide au démarrage, vous constaterez
qu’il est simple d’utiliser des espaces
utilisateur.
La base du programme CHKOBJSRCR
de la figure 1 consiste à
- obtenir des informations sur les
modules d’un programme ILE
(cela implique l’utilisation d’un
second espace utilisateur) - comparer les dates et écrire des
entrées dans un fichier de sortie
Le programme exemple ne prétend
pas tout faire. Il sert surtout à
démontrer l’utilisation des API
dans un programme concret.
Voyons d’abord les détails du
code source du programme de la figure
1, dérivé du programme de la
1ère partie qui emploie des appels
de prototypes (vous pouvez télécharger
tous les programmes de
cet utilitaire sur www.itpro.fr Club
abonnés). En A de la figure 1, le
programme a un fichier de sortie,
LstOutf1. En B, nous voyons que
/copy pour QUSROBJD a été rejointe
par quatre autres entrées
/copy :
- QUSGEN définit une structure de
données qui contient l’information
d’en-tête écrite vers l’espace
utilisateur. Pour nous, l’entrée la
plus importante est la position de
départ de la liste. - QUSLOBJ contient les structures
de données qui définissent la
liste des informations placées
dans l’espace utilisateur. Il
contient en fait des structures
d’enregistrement décrites en
interne. Plusieurs structures sont
définies dans le membre copy,
chacune contenant des quantités
d’informations différentes.
Celle que nous utilisons doit
correspondre au niveau de
détail que nous demandons à
l’API. - QUSRMBRD contient les structures
de données utilisées pour
extraire des détails d’un membre
source. - QBNLPGMI a les structures de données correspondant à des informations sur les programmes
ILE.
Les champs de travail en C ont deux ensembles de
champs servant à manipuler l’espace utilisateur, y compris
des champs pour nommer l’espace et pour accéder aux données
qu’il contient. Le nom de l’espace occupe un champ de
20 octets, dont les 10 premiers représentent le nom de l’espace
et les 10 derniers, le nom de la bibliothèque. Notez que
j’ai créé TEMPSPACE1 et TEMPSPACE2 dans la bibliothèque
QTEMP. Nous avons aussi deux champs en D pour traduire la
casse (majuscules/minuscules) d’une chaîne de caractères,
car les données de certaines fonctions doivent être en majuscules.
Les prototypes en E sont destinés aux API (je les expliquerai
quand nous les utiliserons dans le code). Dans les
cartes C qui suivent, nous commençons avec la même structure
que dans la 1ère partie, mais nous allons maintenant
étoffer cette structure. Voyons à présent les principales sousroutines
à tour de rôle.
Téléchargez cette ressource

Sécurité et conformité du Cloud
Ce guide vous permettra de revisiter vos connaissances et repenser votre posture en matière de sécurité et de conformité dans le cloud. Vous découvrirez comment mettre en place et déployer une stratégie de sécurité fluide et transparente. Un guide essentiel pour sécuriser votre cloud de façon pérenne.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Protégez l’accès non authentifié de vos réunions
- Télécommunications et durabilité : les défis d’une transition verte dans un secteur en mutation
- Vulnerability Operation Center : concepts, mise en œuvre et exploitation
- Faire face à l’évolution des cyberattaques : l’urgence d’une cybersécurité proactive
- Le temps où le RSSI était tenu pour seul responsable est révolu – la responsabilité incombe désormais à toute l’entreprise
