L’AS/400 reste un mystère pour beaucoup, sa longévité fascine et son fonctionnement intrigue. Citons quelques caractéristiques. Un système d’exploitation assis sur une base de données. Tout y est objet. Une lecture/écriture sur une armée de disques en simultanée offrant des temps d’accès record. Des allocations de ressources aux traitements à la volée. Une confusion entre mémoire et disque qui sublime le swap. Une gestion native des contextes qui permet à plusieurs environnements de cohabiter avec les mêmes programmes en toute étanchéité.
D’une fiabilité éprouvée et d’une modernité incroyable, cette machine est fort intéressante à appréhender.
Par obligation ou opportunité, contraint ou en autodidacte, on a parfois besoin ou envie de s’initier à cette machine. Sans trop savoir comment s’y prendre, on peut être perdu alors que c’est sans doute la machine la plus aisée à aborder ! Un comble. Voyons donc ici quelques astuces pour commencer votre auto-formation.
Au menu du barbu
Le premier écran fait penser, pour les plus barbus, à un minitel : un menu suivi d’une ligne de commande. Notez en haut à gauche le MAIN
qui est le nom de ce menu. Sur cette ligne, saisir un nombre suivi de la touche entrée, permet d’accès au sous-menu du même numéro, mais vous pouvez aussi y taper une commande. Dans ses premiers pas, ça parait assez compliqué… Pour finir avec le menu, à force d’aller dans les profondeurs des options, vous arriverez à un écran qui présente les options d’une commande. Vous noterez le nom de la commande en titre, ce qui commence à vous débloquer quant à l’apprentissage des commandes. Mais c’est long et fastidieux alors que c’est si simple à aborder, voyons cela de suite.
Tout est une question de vocabulaire
Une des magies pour moi de ce système d’exploitation est son jeu de commandes appuyé sur un vocabulaire. Chaque commande est composée d’une concaténation de mots d’un vocabulaire défini, suivant une règle de verbe, complément, et parfois complément du complément (gardez ça en tête).
Chaque mot est constitué majoritairement d’un trigramme significatif, par exemple, WRK
(prononcez work) pour gérer, DSP
(display) pour lister, CRT
(create) pour créer. Et vous verrez que tout le reste s’apprend aussi vite. Devinez donc à quoi correspondent : DLT, RMV, CPY ou CHG. Et surtout c’est constant ! Tout ce que vous voudrez gérer commencera par le verbe WRK…
Allez, un complément ! Paf : LIB
(Library) pour bibliothèque (notion que l’on reverra). Qu’en faire de ce truc ? La gérer WRKLIB
, la visualiser DSPLIB
, la supprimer DLTLIB
… Facile non ? La créer ?.. CRTLIB
(vraiment pour les deux du fond).
Vous êtes chaud pour le complément du complément !? On peut gérer un objet WRKOBJ
mais on ne peut pas le visualiser, par contre on peut visualiser la description d’un objet par DSPOBJD
. Le dernier caractère D symbolisant la description va se retrouver dans quelques cas comme DSPJOBD
(display job description) ou WRKDEVD
(work with device descriptions).
Quelques derniers exemples sans entrer dans les détails et afin de vous familiariser avec le vocabulaire : WRKUSRPRF
work with user profile, CPYF
copy file, CRTDUPOBJ
create duplicate object, CHGAUT
change authority, WRKACTJOB
work with active jobs.
C’est totalement un jeu de construction, si fluide qu’on peut retrouver des commandes qu’on ne connaissait pas. Vous avez besoin de visualiser les droits sur un objet, ce sera constitué de DSP, AUT et OBJ. Et pourtant DSPAUTOBJ
ne donne rien. Attention à bien présenter votre commande en anglais Display Object Authority, soit DSPOBJAUT
. Au travers de cet exemple, je veux faire remarquer qu’il ne faut pas hésiter à inverser certains mots CRTDEVPRT ou CRTPRTDEV ? Device printer ou printer device ? Qui ne tente rien n’a rien. N’y a-t-il pas moyen d’être sûr ? Evidemment !
On recherche…
Deux petites choses à savoir pour mieux chercher ce que l’on souhaite :
- L’étoile *
- le
go cmd
.
Tout début de commande terminé par * fournira toutes les commandes commençant par cette chaine de caractère. DMP*
(que peut-on dumper ?), ou CRTOBJ*
(comme ça pour découvrir…), DSPT*
(ah ?..), WRK*
(Ouch, ah oui tout de même !).
go cmd
« littéralement » va à la commande… La commande GO
est un des rares verbes qui ne soit pas à 3 caractères (et pour cause !), elle permet d’aller, d’afficher un menu choisi. Souvenez-vous tout à l’heure je parlais du nom du menu MAIN
. Avec un GO MAIN
, vous retrouverez ce fameux menu.
Si vous y ajouter un mot à ce go cmd
, vous arriverez sur un menu qui liste toutes les commandes qui comporte ce mot. Vous souhaitez connaitre toutes les commandes mettant en jeu les imprimantes (PRT – Printer) ? Essayez donc GO CMDPRT
!
Un peu d’aide
A ce stade vous êtes déjà capable de trouver et comprendre toutes les commandes. Certes, mais comment les mettre en oeuvre ? Entre autre si vous devez mettre des paramètres. Rien de compliqué, vous tapez la commande sur la ligne et au lieu de valider avec entrée, il suffit d’appuyer sur la touche de fonction F4. Ainsi vous ouvrez une page de l’ensemble des options possibles, avec ses champs à remplir, et des propositions de mots-clefs.
Ce n’est parfois pas évident de comprendre ce qui se cache derrière tous ses paramètres ? Utilisez-donc l’aide ! En plaçant le curseur sur la partie qui vous chiffonne et en pressant sur F1 vous obtenez l’aide sur cette partie. Si votre curseur est sur l’en-tête s’affichera l’aide de toute la commande avec toutes les options soit la concaténation des aides concernant chaque option.
Ce fonctionnement de l’aide est valable dans tous les écrans de l’iSeries. Procédez à un WRKACTJOB
, et profitez de l’aide pour comprendre ce que signifie chaque colonne en plaçant le curseur comme il se doit. Pratique non !?
Rock Around the Clock
En parlant des touches de fonctions. Un rappel de leur action est donné dans le bandeau en bas de l’écran.
Parfois, il est proposé des touches au-delà de F12, dans ce cas, il faut altérer avec shift pour accéder aux touches de F13 à F24.
Petite astuce pour celles et ceux qui s’y perdent : c’est de la base 12. Moins matheux : pensez à une horloge, si vous avez besoin de F15, pensez à 15H, soit 3H de l’après-midi, en clair F15 = shift + F3.
Pour aller plus loin
Pour vous aider à appréhender la bête, une petite note sur le fait que tout est objet. Ce qui n’est pas tout à fait vrai puisque tout est soit objet (OBJ – Object) soit un travail (JOB – Job). Les objets sont rangés dans les bibliothèques (LIB – Library) à l’exception des bibliothèques elles-mêmes qui sont rangés dans la bibliothèque système QSYS. Le corrolaire est qu’il n’y a pas d’arborescence sur la partie native de l’iSeries.
Pour être précis et éviter les quolibets, j’ajoute que l’IFS (Integrated file system) est un segment particulier de l’iSeries, que seuls les plus aguerris aborderont.
Pour faciliter la navigation, il est courant que le logiciel PDM (Programming Development Manager) soit installé. Pour le lancer, il suffit de procéder à un STRPDM
(Start PDM). Pour le reste vous êtes autonome.
Conclusion
A ce stade vous avez tout ce qui est nécessaire à savoir pour une auto-formation efficace. Il faut parcourir au gré du vent les différentes notions au travers des commandes. Il faut prendre un mot et procéder à un go cmd
, lire les différentes commandes possibles pour s’imprégner, en ouvrir quelques unes pour lire les aides. Avec de la curiosité vous arriverez à tout connaitre. Un exercice : Quel mot pour les disques ? Quel panel de commandes ? Comment sont-ils gérés ? Plus dur néammois indispensable : Qu’est-ce qu’un sous-système ?
Excellent document 🙂 !
Merci beaucoup