Introduction Aux AS/400 - Volubis

Glossaire
Conception et historique des Minis IBM

A la base de la conception de l'AS/400 et de son système, il y avait la conception du System/38 devant remplacer le System/36. Le besoin de garder les clients du System/36 à conduit à concevoir un système pouvant faire tourner les applications System/36 sur la nouvelle machine. Le projet OS/400 mené par Franck Soltis est né. Son nom de code de l'époque : Silverlake.

75 | 3X | | 32/3481 | 38 | / ................................83 | 36 / : Minis : Gros syst.: OS/400 : | \ / ....................:...............................88 | AS/400 : modèles B | B10/B20 | B30-B70 : V1 : | :...................|.........|...........:........: | : : D | D06-D20 | D35-D80 : V2 : | : :........|.........|...........: : | : : E | E02-E25 | E35-E90 : : | : :........|.........|...........: : | : : F | F02-F25 | F35-F97 : : | :..........:........|.........|...........:........:95 | : Advanced | 200 | 400 : V3R10 : | : Series | | : : | ....................................................96 | : Advanced Series | 400 | 500 : V3R60 : | :...................|.........|...........:........:97 | : eSeries | 600 | 620 : : | : | | 630 : V4R10 : | :.........................................:........:99 | : eSeries | 170 | 720 : : | : | 700 | 730 : V4R40 : | :.........................................:........:2001| : System i | 270 | 8xx : V5R10 : | :.........................................:........:2004| : i5 (i5/OS) | 520 | 550 à 595 : V5R3/R4: | :.........................................:........:2007| : i5 (i5/OS) | 515/525| : V5R4 : ! : | (OS facturé à l'utilisateur): ! :.........................................:........:2008! : Power System | 520/550 | 570 et + : V6R1 : ! : (IBM i ) |soft facturés à l'utilisateur : ! :.........................................:........:2010! : Power System | 720/740 | 750 et + : IBM i : ! : (IBM i ) | | : 7.1 : ! :.........................................:........: 2014! : Power System | S814/824| E870/E880 : IBM i : ! : (IBM i ) | | : 7.2 : ! :.........................................:........: 2018! : Power System | S914/924| E980 : IBM i : ! : (IBM i ) | | : 7.3/7.4: V :.........................................:........: A partir des modèles 400/500 la famille de processeur change (POWER-PC [technologie RISC], à 64 bits), actuellement le POWER 9 le plus puissant : 192 cœurs, 64 To de mémoire, plusieurs dizaines de Po disque.On doit donc dire aujourd'hui, Power System et non plus AS/400

-

Depuis 2001, chaque processeur accepte plusieurs partitions

  • Pour les modèles 8xx et 270 (ISeries) - partitions OS400 et Linux
  • Pour les modèles 5xx (I5) et 7xx et suivants - partitions I5/OS (IBM i ), Linux et AIX - une console externe (HMC, elle même sous linux) gère les partitions du système. Enfin, OS/400 puis IBM i intègrent la technologie PASE, qui grâce à une compatibilité binaire du processeur, permet d'exécuter directement des applications AIX.

Espace Adressable Unique

Dès les débuts de la conception de l'AS/400 une technologie importante avait fait son apparition: l'espace d'adressable unique (Single Level Store). Il s'agit d'accéder aux emplacements mémoire d'un système en confondant notamment la mémoire centrale et les disques durs.

Chaque octet de mémoire (principale ou sur disque) possède une adresse. Le système IBM i considère l'ensemble de la mémoire de l'ordinateur comme un seul grand espace adressable. Il ne fait pas la différence entre la mémoire principale et la mémoire sur disque lors du stockage et du traitement. A l'exécution si, bien sur.Mais la mémoire virtuelle règle le problème. Un IBM i ne dit jamais mémoire pleine (sauf disques saturés), mais si vos besoins de mémoire sont trop volumineux les temps de réponse peuvent se dégrader.

Objet

Information stockée dans la branche QSYS de l'arborescence IFS.

Chaque objet est reconnu par :

  • Son nom (10 C, le premier doit être une lettre)
  • Sa bibliothèque de rattachement
  • Son type (les types sont prédéfinis par IBM, c'est le type qui indique ce que l'on peut attendre de cet objet)
  • le type induit un comportement (d'où le mot "objet") on ne peut pas mettre à jour un programme,ni exécuter un fichier. on ne peut pas changer le type d'un objet.>
COMPOSANTS D'1 OBJET: UN OBJET EST COMPOSÉ 1)- PARTIE ATTRIBUTS QUI CONTIENT LES DE 2 PARTIES : RENSEIGNEMENTS SUR L'OBJET + - SON NOM - SON TYPE - SA BIBLIOTHÈQUE - SON TEXTE DESCRIPTIF (50 C.) - SA DATE DE CRÉATION/ DE MODIF... (dates/heures) - CRÉATEUR et PROPRIÉTAIRE (créateur non modifiable) + - SES AUTORISATIONS (les droits) 2)- LA PARTIE OBJET EN LUI-MÊME ------------------- ! Description ! OBJET DE L'IBM i partie ATTRIBUTS !-----------------! visible ! Autorisations ! (publique) ------------- !-----------------! -------------------------------------- ! ! ! enregistrements ! partie cachée OBJET EN ! si *FILE ! spécifique à ! ! chaque type. LUI-MÊME ! instructions ! ! machine, ! ! si *PGM ! ! ! !------------------

Commandes associées

  • DSPOBJD : montre la description d'un objet
  • DSPOBJAUT (EDTOBJAUT pour modifier) montre les autorisations
  • WRKOBJ : pour obtenir une liste d'objets

    WRKOBJ *LIBL/DRH* ==> tous les objets commençant par DRH dans la liste de bibliothèques

    WRKOBJ *ALL/DRH* ==> tous les objets commençant par DRH dans toutes les bibliothèques

    WRKOBJ PAIE/DRH* *PGM ==> tous les programmes commençant par DRH dans la bibliothèque PAIE

    WRKOBJ PAIE/*ALL ==> tous les objets de la bibliothèque PAIE

  • CRTxxx : commande de création d'objet (CRTPGM, CRTPF, CRTUSRPRF)
  • DLTxxx: commande de suppression d'objet (DLTPGM, DLTLIB)

Bibliothèque

Sorte de "répertoire" dans lequel on classe logiquement les objets. Chaque bibliothèque est rattachée à QSYS (ainsi que les définitions de profils utilisateur et les définitions de périphériques)

pour nommer un objet, on peut :

  1. Indiquer la bibliothèque où il se trouve (qualification) par exemple "call PAIE/DRH047"
  2. Laisser le système "chercher" : call DRH047

L'IBM i utilise alors *LIBL, la liste de bibliothèques (250 au maximum) associée à chaque session ou travail et venant initialement de la JOBD du profil

Commandes associées

  • CRTLIB / DLTLIB
  • DSPLIB (une sortie papier affiche la taille totale)
  • WRKLIB, pour gérer des bibliothèques
  • WRKOBJ BIB/*ALL, pour gérer le contenu
  • EDTLIBL : pour réviser de manière interactive la liste de bibliothèques
  • ADDLIBLE pour en ajouter une (attention à la position)
  • RMVLIBLE pour en enlever une

IFS

Système arborescent des informations stockées sur disque, représente des systèmes de fichiers différents, fédérés sous une même racine, une même vision.

  • Root (ou /) Système de fichier (compatible NTFS - Microsoft), les noms longs sont acceptés, on ne fait pas le distinction minuscules/MAJUSCULES. Idéal pour le stockage d'images, de pages html, etc...
  • /QopenSys Système de fichier type UNIX, distinction minuscules/majuscules, les liens multiples sont admis
  • /QDLS Système de fichier (équivalant FAT sous DOS), les noms sont limités à 8.3
  • /QSYS.LIB Système de fichier natif IBM i, le type est donné en tant qu'extension (limité à 10.6 donc), c'est le seul système de fichier acceptant des exécutables IBM i et des éléments base de données. Branche la plus importante donc, seuls les membres sources sont éditables(directement)
  • QNTC Client NetBios( ou voisinage réseau) on doit pouvoir accéder aux machines du réseau (Serveur Windows) par cette branche.

Commandes associées

  • WRKLNK, voir l'IFS
  • MKDIR , créé un répertoire
  • GO FILESYS, pour voir un menu général sur le sujet le nouvel émulateur (IBMi Access Client Solution) propose un accès à l'IFS (menu ACTION)

Commandes

Objet de type *CMD, permettant de donner des ordres au système IL EXISTE ENVIRON 1500 COMMANDES SUR L'AS, ELLES SONT TOUTES CONCUES DE LA MEME FACON. 1 SYNTAXE UNE COMMANDE EST COMPOSEE DE 2 PARTIES PRINCIPALES. L'action à exécuter + les paramètres de la commande VERBE + MOTS-CLES Si je veux créer un utilisateur j'utiliserai la commande CRTUSRPRF USRPRF(nom de l'utilisateur) Si je veux supprimer un programme j'utiliserai la commande DLTPGM PGM(bibliothèque/nom du programme)

Principaux verbes des commandes CL

ADD ajouter RMV enlever APY appliquer CFG configurer CHG modifier CHK vérifier CLR mettre à blanc CPY copier CRT créer DLT supprimer CVT convertir DCL déclarer DSP afficher DUP dupliquer EDT réviser GRT accorder RVK révoquer HLD suspendre RLS libérer INZ initialiser MOV déplacer OPN ouvrir CLO fermer OVR substituer RNM rebaptiser SAV sauvegarder RST restaurer SBM soumettre SND envoyer RCV recevoir STR démarrer END arrêter WRK gérer

Sujets

CFG configuration SQL commandes SQL CMD commande SRV maintenance CTL contrôleur SYS système DBF fichier B de D. USR utilisateur DEV unité WS Poste de travail DKT disquette WTR éditeur JOB travail(JOBD, JOBQ) LIB bibliothèque ... etc ... LIN ligne(LIND) LOG historique OUT sortie(OUTQ) SAV sauvegarde(SAVF) SBS sous-système(SBSD) SPL Spool(SPLF)

L'écran de commandes nous permet de demander l'exécution des commandes :

cet écran est appellé par CALL QCMD (c'est un peu command.com sur AS)

  • F9 permet de retrouver une commande précédente
  • F10 vous affiche toutes les commandes de votre session

Sur cet écran nous allons pouvoir demander l'exécution d'une commande ,

par exemple la création d'un nouvel utilisateur

En dessous de la commande que vous avez frappé apparaissent des messages indiquant le résultat de la demande d'exécution de la commande.

Il est très important de lire ces messages pour savoir si la commande a été exécutée avec succès ou non, et si non, connaître les raisons de cet insuccès.

Il est possible que le message ainsi affiché ne soit pas très clair ou alors qu'il soit incomplet. Vous pouvez demander un complément d'information sur le message en positionnant le curseur sur le message désiré et en appuyant sur la touche AIDE (F1). C'est ce que nous allons faire en nous positionnant sur le message "Le profil utilisateur existe déja".

Si vous n'avez plus en mémoire les différents paramètres ou si vous souhaitez de l'aide quant aux valeurs pour un paramètre, demandez l'invite (ou Guide opérateur) en appuyant sur F4.

Sur cet écran d'invite, remarquons : les champs obligatoires en Haute intensité les champs facultatifs en intensité simple (avec une valeur par défaut). les touches de fonction : F1 qui vous affiche l'aide en fonction de la position curseur. F3/F12 pour annuler la commande F10 affiche des paramètres de moindre importance (par défaut on vous affiche les principaux paramètres) F11 affiche en alternance : - un extrait des val. possibles à droite - le nom de chaque paramètre à gauche F13 vous explique en détail tout cela et plus encore.

Travaux

Tous les jobs s'exécutent dans un environnement appelé sous-système. Un groupe de jobs avec des caractéristiques communes peut être contrôlé indépendamment des autres jobs, si ces jobs sont placés dans un même sous-système. Ces sous-systèmes peuvent être aisément démarrés ou arrêtés, pour des besoins d'exploitation. Un sous-système appelé le sous-système de contrôle est automatiquement démarré quand l'OS est démarré. (normalement les jobs de la console sont initialisés dedans) Un travail ne peut s'exécuter dans un sous-système que si celui-ci est démarré. les travaux interactifs s'exécutent souvent dans QINTER,les batchs dans QBATCH, les travaux de télécommunication dans QCMN, les serveurs WEB dans QHTTPSVR les travaux pour dialoguer avec les PCs dans QSERVER et les démons IP dans QSYSWRK. Les fonctions spool (éditeur) sont initialisées dans un sous-système particulier (QSPL)

un travail représente un traitement autonome, lancé par un utilisateur et connu de l'IBM i. Il est identifié par :

  • un nom de travail (le nom de l'écran en interactif, le nom de l'imprimante pour un éditeur, libre en batch)
  • le profil ayant demandé ce traitement (profil d'ouverture de session ou profil ayant soumis)
  • un N° système (6 chiffres) unique

Les grands types de travaux

  1. Session interactive, démarrée par une ouverture de session (SIGNON)
  2. Travail Batch, demande d'un traitement différé par SBMJOB
  3. Travail de type serveur (lancé en automatique au démarrage de l'IBM i ou par une commande STRTCPSVR par exemple) Chargé de répondre aux demandes venant du réseau à l'écoute en attendant.
  4. Editeur d'imprimante (WRITER) , chargé de s'occuper d'UNE imprimante.

    Pour les travaux BATCH, il y a file d'attente (JOBQ) afin d'empiler les demandes avant traitement.

    On peut multiplier les JOBQ, multiplier les sous-systèmes

==> Choisir une JOBQ, c'est (indirectement) choisir un sous-système.

D'où viennent les paramètres d'un JOB

1/ certains viennent des valeurs système paramètre unique sur une machine comme la date, l'heure, le N° de série 2/ le profil utilisateur référence une JOBD (DSPUSRPRF) à utiliser, indiquant : - les priorités en file d'attente OUTQ et JOBQ - les files d'attentes et imprimantes par défaut - la liste de bibliothèque (*LIBL) - et autres paramètres ... 3/ le sous système lui, indique une classe (objet *CLS) qui précise - priorité machine - temps maximum de prétention à la CPU dans le cadre du multi-tâche préemptif. pour voir les paramètres d'un travail, DSPJOB : 1 : affiche l'état du travail (utilisateur, sous système, date d'entrée) 2 : affiche les attributs de définition, donnés par la jobd, dont la JOBD 3 : affiche les attributs d'exécution donnés par la classe 10 : affiche l'historique des commandes passées et les messages associés (DSPJOBLOG)

Un travail peut avoir trois états.

  1. EN JOBQ (en attente de traitement, donc, comme JOB4)
  2. ACTIF (en traitement, comme JOB2)
  3. Terminé, il faut alors distinguer deux cas :
    • ayant produit un spool encore sur le système : il est à l'état OUTQ (si le spool se nomme QPJOBLOG, il s'agit de l'historique, mais sur papier)
    • n'ayant pas produit de spool ou spool ayant disparu, le job n'est plus référencé dans les tables systèmes (seul DSPLOG peut éventuellement vous en afficher le trace)

Commandes associées

  • WRKUSRJOB , voir les travaux d'un utilisateur
  • WRKJOBQ , voir toutes les JOBQ puis le contenu d'une JOBQ
  • WRKSBSJOB , voir les travaux d'un sous-système
  • WRKACTJOB, tous les travaux actifs (tri par F16)
  • SBMJOB soumettre un travail
  • DSPJOB, voir les caractéristiques d'un travail (CHGJOB pour modifier)
  • DSPLOG, Historique système, contient la liste des démarrages et arrêts de travaux

Spool

Un fichier spool est une demande d'impression en attente de traitement.

Les différents éléments du processus Spool sur IBM i

  • Fichier spool membre d'un fichier système dans la bibliothèque QSPL, il contient des données à écrire et des ordres de mises en forme.L'adaptation à l'imprimante sera réalisée plus tard, ce qui permet d'en visualiser le contenu (sauf certains cas ou le spool contient des données graphiques non affichables)
  • OUTQ File d'attente dans laquelle est référencé le Spool (ils sont classés par priorité, puis FIFO)
  • Imprimante Unité représentant l'imprimante physique reliée à l'IBM i, (gérable par WRKCFGSTS *DEV)
  • Editeur Pgm système de réaliser le lien avec une imprimante, d'adapter le flot de donnée à l'imprimante (ou de refuser l'impression si cela n'est pas possible) et d'assurer le suivi de la totalité de l'impression (gestion des incidents). DEUX ARCHITECTURES sont possibles :
  1. Imprimante reliée à l'IBM i (objet *DEVD)

    - A un instant donné on relie une file d'attente de sortie à une unité physique (imprimante).

    Tous les fichiers prêts à être édités de cette file d'attente seront édités sur l'unité physique considérée

    • Une file d'attente ne peut à un instant donné alimenter qu'une seule unité physique. • La liaison (OUTQ - IMPRIMANTE) se fait grâce à une commande STRPRTWTR • Il est possible de sélectionner le TYPE de papier (listing, 80 colonnes, doubles exemplaires,...) seuls les états du type indiqué seront imprimés.

    il peut s'agir d'une imprimante reliée par twinax ou par le réseau local (Marques IBM, Lexmark, HP, ...)
  2. Serveur d'impression, l'IBM i ne connait qu'une OUTQ dite remote - A un instant donné on relie une file d'attente de sortie à un serveur d'impression éloigné Ce serveur peut être un autre IBM i, un serveur d'impression NT/Unix Ou un boitier / attachement réseau imprimante implémentant LPD si le serveur peut n'est PAS un autre IBM i, l'IBM i local convertira le spool en ascii ET TRANSFORMERA LE FLOT EN FLOT COMPRÉHENSIBLE PAR L'IMPRIMANTE ÉLOIGNÉE (fonction Host Print Transform) - l'IBM i gère de nombreux format dont le PCL5 (plus JET direct) et le postscript - La liaison (OUTQ -serveur) se fait grâce à une commande STRRMTWTR - L'IBM i local ne se considère pas responsable des erreurs imprimante

Commandes associées

  • WRKSPLF, voir les spools générés par un utilisateur
  • WRKOUTQ , voir toutes les OUTQ ou le contenu d'une OUTQ
  • Retrouver le travail, DSPJOB et option 4 pour voir les spools d'UN travail
  • WRKWTR *PRT pour voir les éditeurs d'imprimantes
  • WRKWTR *ALL pour voir tous les éditeurs actifs (même remote)

IBMi Access Client Solution propose un affichage des spools Edition/Filtre permet d'être sélectif et voici les options proposées

Utilisateurs et droits

La gestion de la sécurité s'appuie sur la notion de profil utilisateur (objet *USRPRF dans QSYS)

Pour gérer la liste des utilisateurs : WRKUSRPRF *ALL

l'option 1 permet de créer un nouvel utilisateur :

remarquons les paramètres :

  • État : *ENABLED (actif) ou *DISABLED (désactivé, après trois mauvais mot de passe)
  • classe d'utilisateur
    • *USER : sans droits particuliers
    • *SYSOPR : de type opérateur (droit de sauvegarde et de gestion des travaux)
    • *PGMR : développeur (droit au debug)
    • *SECADM : droits de création des utilisateurs
    • *SECOFR : tous les droits, pour cet utilisateur les droits sur les objets ne sont pas vérifiés
  • Possibilités restreintes qui interdit l'utilisation de la ligne de commandes

Ici, remarquons

  • la durée de validité d'un mot de passe
  • la JOBD
  • le profil de groupe
nous pouvons attribuer à l'utilisateur un profil de groupe afin de gérer les droits sur quelques groupes cohérents d'utilisateurs et non individu par individu.

La gestion des droits est la base de la sécurité sur un IBM i, tout objet possède des droits publics (indiquant les droits par défaut pour un utilisateur "lambda" indiqué par *PUBLIC) et des droits nominatifs ou privés.

les droits sont révisables par EDTOBJAUT (WRKOBJ puis option 2) ou WRKAUT pour les fichiers IFS.

  • *EXCLUDE marque une absence de droit
  • *USE donne un droit de consultation
  • *CHANGE le droit de modification du contenu (fichier BD particulièrement)
  • *ALL donne tous les droits (destruction incluse)

F11 permet de voir le détail.

Réseau

Réseau historique SNA

Dans les réseaux SNA , on utilise plusieurs protocoles.

5250, gestion des terminaux

typiquement +--CTL01 une carte dans l'AS/400, dite contrôleur TWinax ! ! +----Unité un écran passif ou une imprimante

- WRKCFGSTS *CTL, pour voir l'état du contrôleur

- WRKCFGSTS *DEV, pour voir l'état des unités

Réseau TCP/IP

- les cartes réseau sont matérialisées par un objet "LIGNE" WRKCFGSTS *LIN, pour voir l'état des lignes (le système leur associe un contrôleur et une unité de type "Net" représentant le réseau local)

— Adresse IP, chaque machine est identifiée par une adresse unique (composée de 4 octets) comme 10.3.1.1 ou 192.168.127.145 Sur IBM i, c'est la notion d'interface qui permet d'associer une (ou plusieurs) adresse(s) IP à une ligne (cde CFGTCP / 1)

— Serveur DHCP, serveur attribuant dynamiquement leur adresse et leur config. ip aux machines qui le lui demandent.

— Serveur DNS, serveur contenant la liste des correspondances nom-de-machine/adresse-IP permettant de travailler avec une machine en indiquant son nom plutôt que son adresse.

— Serveur IP, processus (sur IBM i, un travail) à l'écoute sur un n° de port (sorte de n° de canal normalisé) pour rendre un service donné.

Nom du serveur port utilisé service rendu
ftp 20/21 serveur de fichiers
telnet 23 terminal virtuel (émulateur)
smtp 25 envoi/réception de mail
dns 53 serveur de noms
http (apache) 80 Serveur WEB
pop 110 serveur de mail (gestion de la boite aux lettres)
netbios 137 à 139 fonction voisinage réseau
Quelques exemples de serveur IP

Commandes associées (sont notées en minuscules/italiques, les commandes PC uniquement)

  • PING , test de la connexion avec une machine
  • ipconfig , voir la configuration d'un PC sous WINDOWS (winipcfg en 95/98)
  • TRACEROUTE ou tracert, donne la liste des intermédiaires avec une machine
  • NSLOOKUP , interrogation du serveur DNS (par adresse ou par nom)
  • NETSTAT, pour voir les connexions actives
    • NETSTAT *CNN sous IBM i
    • netstat -a sous MS-Windows ou Unix
  • WRKCFGSTS *LIN, commande IBM i pour voir l'état des lignes
Récapitulatif des opérations courantes
POUR ... ASSISTANT (touche "echap") Navigator for i (http://votreIBMi:2001) Commande
voir les spools menu principal/option1 opérations de base/ sorties imprimante WRKSPLF
voir les OUTQ gestion des travaux/ files d'attente sortie WRKOUTQ
voir les imprimantes menu principal/option1 puis F22 opérations de base/ Imprimantes WRKWTR
voir les messages menu principal/option 3 opérations de base/ Messages WRKMSG
envoyer un message menu principal/option 4 Messages / Action / Envoi de message SNDMSG
Gérer les travaux menu principal/option 2 opérations de base/travaux (gestion de travaux/travaux actifs) WRKUSRJOB(wrkactjob)
Gérer les JOBQ gestion de travaux/Files de travaux WRKJOBQ
Gérer les unités menu principal/ option 10 puis option 20 opérations de base/ Imprimantes (puis Avancé/Unité) WRKCFGSTS
Gérer les utilisateurs menu principal/ option 10 puis option 12 Utilisateurs et groupes WRKUSRPRF
Gérer les répertoires (IFS) Systèmes de fichier WRKLNK

Résolution d'incidents

•Commencez toujours par aller voir les messages de l'opérateur système

Operation navigator Assistants ou Commandes
Opérations de bases / messages (puis inclusion pour choisir l'utilisateur QSYSOPR) Configuration et maintenance/Historique du système (V5R4)

DSPMSG QSYSOPR

Utilisez aussi DSPLOG

•sur un JOB : trouvez le travail

Operation navigator Assistants ou Commandes
Travaux (puis inclusion pour choisir l'utilisateur) option 2 ou WRKUSRJOB nom-utilisateur

quel est son état :

  • Actif : regardez s'il y a des messages en attente
    clic/droit, historique option 10
  • Outq : regardez s'il a une historique papier (QPJOBLOG)
    clic/droit, sorties imprimantes option 8
  • Jobq : regardez si la JOBQ est reliée à un sous système, puis s'il y a des travaux en attente
    inclusion : travaux en Jobq ou Files de travaux, toutes ...en V5R10 WRKJOBQ, puis option 5
    regardez les travaux actifs dans le sous-système
    Travaux actifs ou sous-systèmes en V5R10 WRKSBSJOB ou WRKACTJOB

•sur un SPOOL : trouvez le spool

Operation navigator Assistants ou Commandes
Opérations de base/Sorties imprimantes (puis inclusion pour choisir l'utilisateur) option 1 ou WRKSPLF nom-utilisateur

quel est son état :

  • Hld ou suspendu : libérez le.
    clic/droit, libération... option 6
  • Wtr ou Snd: il est en cours d'édition ou d'envoi, réactualisez.
    F5 F5
  • Msg ou attente de messages : il faut répondre.
    clic/droit, réponses... option 7
  • RDY ou prêt : il ne s'imprime pas car :
    • il y a d'autre spools devant lui (en OUTQ)
    • l'éditeur n'est pas actif.
    • l'imprimante n'est pas démarrée pour le savoir :

    Opérations de base/Imprimantes

    regardez les spools en attentes regardez l'état (non disponible, arrêté), puis clic/droit pour changer

    WRKOUTQ WRKWTR WRKCFGSTS

•sur un problème réseau

Operation navigator Assistants ou Commandes
Réseau / Configuration TCP/IP / connexions NETSTAT OPTION(*CNN) + PING
  • la connexion est active
    • retrouvez l'historique du travail (clic droit /travaux ou option 8)
  • la connexion est n'est PAS active
    • retrouvez le serveur (réseau / serveur / TCP/IP), voyez s'il est actif
      • OUI, regardez l'historique
      • NON, regardez les spools (QPJOBLOG)

    Introduction à DB2 for i

    La base de données IBM i est globale (il n'y a pas de possibilité de créer plusieurs bases indépendantes).Ce qui s'en rapproche le plus est la notion de bibliothèque.Chaque bibliothèque contient des fichiers base de données autonomes (objets au sensIBM i du mot) :

  • Les fichiers physiques ou tables SQL, contiennent les données (enregistrements)
  • Les fichiers logiques proposent un accès particulier aux données :
    • un critère de tri particulier (index)
    • un format d'enregistrement particulier (sélection de lignes, reformatage des colonnes, jointure) Historiquement les fichiers sont créés avec un langage propriétaire : SDD (ou DDS en Anglais) :
      ######################## ## FICHIER PHYSIQUE ## ######################## SPECIFICATIONS DE DESCRIPTIONS DE DONNEES Un source SDD est décomposé en QUATRE niveaux : + Niveau fichier (avant le premier format) définit les mots-clés valables pour l'ensemble du fichier col 45 : REF(fichier-répertoire) UNIQUE + Niveau format (à partir du nom du format et jusqu'à la première définition de zone) col 17 : R (record) col 19-28 : nom du format col 45 : mots-clés
      ######################## ## FICHIER PHYSIQUE ## ######################## SPECIFICATIONS DE DESCRIPTIONS DE DONNEES Un source SDD est décomposé en QUATRE niveaux : + Niveau zone (avant le format suivant ou avant le niveau C.A) col 17 : à blanc col 19-28 : nom de la zone __ col 29 : référence OU | |__ col 30-34 : longueur col 35 : type col 36-37 : nb de décimales
      ######################## ## FICHIER PHYSIQUE ## ######################## NATURE ET LONGUEUR DE LA ZONE 1. ZONE ALPHA ou CHAR (nb de décimales à blanc) type de zone A ou BLANC valeur par défaut -> codification EBCDIC 2 . ZONE NUMERIQUE (nb de décimales renseigné) - par défaut les zones numériques sont en condensé (packé) - la longueur fournie doit être la longueur totale(avec déc.) type de zone P ou BLANC packée (valeur par défaut) S étendue (signée) B binaire L date T horaire Z horodatage:date,heure,microsecondes
      ######################## ## FICHIER PHYSIQUE ## ######################## MOTS-CLE COMPLEMENTAIRES. 1) DOCUMENTATION D'APPLICATION (colonne 45) TEXT('TEXTE DE LA ZONE OU DU FORMAT') COLHDG('ENTET1' 'ENTET2' 'ENTET3') 2) CONTROLES DE SAISIE (colonne 45) COMP(XX val) xx = EQ(=),NE(<>),GT(>),GE(>=),... RANGE(borneinf bornesup) VALUES(val1 val2 val3 ...) CHECK(xx) XX = VN nom valide,M10 = modulo 10,..(contraignant) 3) PRESENTATION DES DONNEES NUMERIQUES EDTCDE(x) un édit-code prédéfini EDTWRD('zzzzzzzz') masque d'édition
      ######################## ## FICHIER PHYSIQUE ## ######################## SPECIFICATIONS DE DESCRIPTIONS DE DONNEES Dernier niveau (facultatif avec les PF) : + Niveau C.A (en fin de source, dernier niveau) col 17 : K = définition de clé col 19-28 : nom de la zone col 45 : définition complémentaire DESCEND
    • Exemple de source : R CLIENTF1 TEXT('FICHIER CLIENT') NOCLI 6 0 TEXT('N° CLIENT') COLHDG('N°' 'du' 'Client') EDTCDE(Z) COMP(GT 0) NOMCLI 30 TEXT('NOM CLIENT') COLHDG('NOM Client') COMP(NE ' ') DEP 2S 0 TEXT('DEPARTEMENT DU CLIENT') COLHDG('DEPT') RANGE(01 98) ... / /// DATCRT L TEXT('Date création') COLHDG('Date' 'Création') DATFMT(*EUR) CACLI 13 2 TEXT('CA ANNUEL') COLHDG('CA' 'Annuel') EDTCDE(L) COMP(GE 0)

      Pour éditer votre membre source, utilisez RDI

      • Utilisez le filtre liste de biblitohèques
      • sur votre bibliothèque : Développer jusqu'à/fichiers source
        • Pour éditer un membre source, double clic
        • Pour créer, sur le fichier source (QDDSSRC), Nouveau/membre
      • Sous l'éditeur (LPEX) utilisez les raccourcis clavier habituels + F4 pour retrouver le découpage propre à DDS
      • puis vous passerez la commande CRTPF (Compiler).

      Attention aux paramètres par défaut : •SIZE(10000 1000 3) indiquent un nombre maxi de lignes de 13000 (10000, puis 3 incréments de 1000) •REUSEDLT(*NO), la place des enregistrements n'est pas récupérée, il faut régulièrement utiliser RGZPFM [ avec *YES, les nouvelles lignes sont écrites physiquement à la place des lignes supprimées] •MAXMBR(*NOMAX) ou toute val > à 1 , autorisant les fichiers multi-membres. Aujourd'hui , SQL est de plus en plus utilisé :

    • Exemple de script : CREATE TABLE BIB/CLIENTS (NOCLI DEC(6 , 0) PRIMARY KEY , NOMCLI CHAR(30) , DEP NUMERIC(2 , 0) CHECK BETWEEN 01 AND 98 ,../ ... DATCRT DATE, CACLI DEC(13 , 2 ))

    les paramètres sont renseignés différemment [ SIZE(*nomax) REUSEDLT(*yes) et MAXMBRS(1) ]

      Quelques commandes utiles : ------------------------- - DSPFD = description générale - DSPFFD = liste des champs - DSPPFM = voir le contenu (non formaté) - RGZPFM = réorganisation physique des lignes d'une table - DSPDBR = relations base de donées (relations PF <-> LF) - CPYF = copie d'un fichier Base de données - STRDFU = utilitaire de maintenance de fichiers & UPDDTA = modifier le contenu DSPDTA = voir le contenu (formaté) - STRQRY = utilitaire de génération de listes & RUNQRY = lister le contenu (écran ou état) - STRSQL = SQL interactif (en mode caractères, donc)

enfin , au fur et à mesure des versions, nous avons la possibilité d'avoir une vision graphique de la base de données via System i Navigator (version Windows) ou ACS (version java) :

Avec ACS (IBMi Access Client Solution)

Vous pourrez complètement administrer la base de données

  • Choisissez les schémas avec lesquels vous souhaitez travailler.

  • obtenir un aperçu ou éditer la table
  • voir les caractéristiques techniques d'un objet (table ou vue), par Description.
  • réorganiser les fichiers
  • Gérer la fonction journal ->

    L'affichage se présente comme un affichage de moniteur de performances

    • saisie des critères de choix

    • Résultat :

    • sur chaque poste on peut voir les données brutes
    • et sur les postes de données (ajout, mise à jour ...), les données formatées
  • retrouver l'ordre SQL qui permettrait d'obtenir la même chose (PF créé par SDD, compris)

    Il sera affiché dans le produit "gestionnaire de scripts SQL"

    Enfin, vous pouvez lancer "à la main" le gestionnaire de scripts ==> Version Windows, sur le nom de votre système, click droit, puis Exécution de scripts SQL.

    Sous ACS (version 1.1.5 minimum)

  • Pour un rappel de la syntaxe, voyez notre mémo SQL Vous pourrez obtenir des informations d'optimisation (VISUAL EXPLAIN)

    Voyez ensuite notre cours Initiation à la programmation ou bien le cursus RPG.

© AF400 - Volubis

Tag » Apprendre Utiliser As400