API (présentation)

BoTTom |    Changer de couleur
 
    A P I  Présentation.  (Application Program Interface)
 
           Routines de l'OS/400 permettant à des pgms utilisateurs
            d'exécuter par appel de pgm, certaines fonctions système
            (ou logiciel, cf API d'office/400)
 
    API déja connues :   cdes + QCMDEXC
                              + QCMDCHK
 
                      Chaînes + QCLSCAN
                      de car. + QDCXLATE
 
                       Dtaq   + QSNDDTAQ
                              + QRCVDTAQ
                              + QCLRDTAQ
                              + QMHQRDQD (retrouver déf. d'une dtaq)
 
                       plus   API pour office/400
                              API pour télécoms (terminal virtuel,...)
 
 


|    Changer de couleur
 
   Ne pas confondre API (spécifiques à un système, ici AS/400)
                et  CPI (Common Program Interface) routines communes à
                 un certain nombres de systèmes IBM (OS/2,AS/400, S/370 ..)
 
                voir CPI Query management
                     CPI Télécomunication (alternative aux fichiers ICF)
                     CPI REXX (langage procédural interprété)
 
   Objets liés aux API :  (sur ces liste, les API soulignées sont V2R30)
 
               1/ USER SPACE (*USRSPC)  Suite d'octets dans lesquels
                     l'utilisateur peut mettre ce qu'il veut,
                  ou renseigné par des API système de type "liste de .."
 
                  API QUSCRTUS création
                      QUSPTRUS (retrouve pointeur de début)
                      QUSRTVUS extrait partie du contenu
                      QUSCHGUS modifie partie du contenu
                      QUSDLTUS suppression
                      QUSCUSAT modification des attributs
                      QUSRUSAT extraction des attributs


|    Changer de couleur
 
         API pouvant remplir un user space
                     QUSLOBJ  liste d'objets
                     QUSLJOB  liste de travaux
                     QWCLASBL liste des sous-systèmes actifs
                     QUSLMBRD liste des membres d'un fichier
                     QUSLRCD  liste des formats d'un fichier
                     QUSLFLD  liste des zones d'un format
                     QUSLSPL  liste des fichiers spool
                     QEZLSGNU liste des utilisateurs en session
                     QFVSTNL  liste des entrées noeuds de réseau
                     QMHLJOBL liste des messages de la JOBLOG
                     QMHLSTM  liste des messages d'une MSGQ
                     QPMLPRFD liste des données de performance
                     QSRLSAVF liste du contenu d'un SAVF
                     QSYLATOL liste des objets protégés par une AUTL
                     QSYLAUTU liste des utilsateurs autorisés
                     QSYLOBJA liste des objets possédés ou autorisés/USER
                     QSYLOBJP liste des programmes adoptants un profil
                     QSYLUSRA liste des USERs autorisés à un objet
                     QWCLSCDE liste d'infos sur le planning système
                     QWDLSJBQ liste des jobqs d'un sous- système


|    Changer de couleur
                     QBNLPGMI liste d'infos sur un programme (ILE)
                     QBNLSPGM liste d'infos sur un *SRVPGM (ILE)
                     QDCLCFGD liste des objets de configuration (lignes,..)
 
               2/ USER INDEX (*USRIDX)
 
                  Equivalent à une table indexée (tri automatique,recherche)
 
                  + pas d'API de manipulation en V2R20
                       (==> utilisation en C,PASCAL,ou MI)
 
                  + API de manipulation en V2R30
 
                  API QUSCRTUI création
                      QUSDLTUI suppression
 
                      QUSADDUI ajout d'un poste
                      QUSRTVUI extraction d'un poste
                      QUSRMVUI suppression d'un poste
                      QUSRUIAT extraction attributs d'un user index
 
 


|    Changer de couleur
 
               3/ USER QUEUE (*USRQ)
 
                  Equivalent à une MSGQ utilisateur avec notion de clé
 
                  MAIS pas d'API de manipulation pour l'instant(cf *USRIDX)
 
                  API QUSCRTUQ création
                      QUSDLTUQ suppression
 
 
               4/ PGM MI (langage type assembleur)  MI = Machine Interface
 
                  ==> programmation en assembleur disponible sur AS
 
                      Nécessite une parfaite connaissance de la machine
                       et de ce type de langage.
 
                  API QPRCRTPG création d'un pgm à partir de source MI
 
                               La totalité du source étant transmise
                                  dans une seule variable.


|    Changer de couleur
 
               5/ HFS (Hierarchical File System)
 
                  Fichiers type documents (non relationnels)
                   répertoriés dans des Dossiers.
 
                 Exemple: DLS (Directory Library Service) Documents Office
                 Il est possible de manipuler les documents Office
                                 de créer son propre système.
                 API non listées (trop nombreuses)
 
               6/ API diverses
 
                  a- Extraction d'infos système (type cdes CL RTV....)
 
                     QUSROBJD retrouver définition d'un objet
                     QUSRJOBI retrouver infos sur un travail
                     QWDRSBSD retrouver définition d'un sous-système
                     QUSRMBRD retrouver infos sur un membre de fichier
                     QUSRSPLA retrouver infos sur un fichier spoule
                     QDBLDBR  retrouver relations base de données
 


|    Changer de couleur
 
 
                     QCDRCMDI retrouver infos sur une commande
                     QCLRPGMI retrouver infos sur un pgm (OPM)
                     QBNRSPGM retrouver infos sur un *SRVPGM (ILE)
                     QDCRCFGS retrouver état d'un objet de config.
                     QDCRCTLD retrouver infos sur un contrôleur
                     QDCRDEVD retrouver infos sur une unité
                     QDCRLIND retrouver infos sur une ligne
                     QLGRTVSS retrouver source d'une table
                     QMHQRDQD retrouver description d'une DTAQ
                     QMHRDQM  lire contenu d'une DTAQ sans suppression
                     QSPRJOBQ retrouver infos sur une JOBQ
                     QSPROUTQ retrouver infos sur une OUTQ
                     QSPRWTRI retrouver infos sur un éditeur de spool
                     QTNRCMTI retrouver infos sur le contrôle de validation
                     QWCRSSTS retrouver infos de performance (WRKSYSSTS)
                     QWDRSBSD retrouver infos sur un sous-système
                     QWDRJOBD retrouver infos sur une JOBD
 
 
 


|    Changer de couleur
 
                  b- Sécurité
 
                     QSYGETPH validation interne d'un profil.
                     QWTSETP  changement de profil à l'intérieur d'un job
                              (à partir d'une validation préalable)
                     QSYRLSPH suppression de la validation d'un profil
                     QSYCHGPR modifier date de dernier SIGNON
                     QSYCHGPW modifier mot de passe
 
                     QSYCUSRA vérifier autorisations sur un objet
                     QSYCUSRS vérifier autorisations spéciales (*SECADM,...)
                     QSYLAUTU lister les utilisateurs autorisés (connus)
                     QSYLATLO lister les objets protégés par une AUTL
                     QSYLOBJP lister les objets qui adoptent un profil
                     QSYLOBJA lister les objets possédés ou autorisés à USER
                     QSYLUSRA lister les utilisateurs autorisés à OBJET
                     QSYRUSRA retrouver les autorisations d'un USER / OBJET
                     QSYRUSRI retrouver infos sur un profil
 
 
 


|    Changer de couleur
 
                  c- Messagerie
 
                     QMHCHGEM modifier message d'exception (erreur)
                     QMHLJOBL lister messages de la JOBLOG
                     QMHLSTM  lister messages d'une MSGQ
                     QMHMOVPM déplacer un message d'une PGMQ à une autre
                     QMHPRMM  promouvoir un message/PGMQ (le remplacer)
                     QMHRCVM  recevoir un message d'une MSGQ
                     QMHRCVPM recevoir un message d'une PGMQ
                     QMHRMVM  supprimer un message d'une MSGQ
                     QMHRMVPM supprimer un message d'une PGMQ
                     QMHRSNEM renvoyer un message d'erreur
                     QMHRTVM  retrouver infos sur un message
                     QMHRMQAT retrouver infos sur une MSGQ
                     QMHRTVRQ retrouver messages de type *RQS (gestion F9)
                     QMHSNDBM envoyer un message (SNDBRKMSG)
                     QMHSNDM  envoyer un message (SNDMSG)
                     QMHSNDPM envoyer un message (SNDPGMMSG)
                     QMHSNDRM envoyer une réponse (SNDRPY)
 
 


|    Changer de couleur
 
                  d- Produits sous licence et PTF
 
                     QSZCRTPD créer une définition de produit (*PRDDFN)
                     QSZCRTPL créer un *PRDLOD
                     QSZPKGPO "packager" une option de produit
                     QSZDLTPD supprimer un *PRDDFN
                     QSZDLTPL supprimer un *PRDLOD
                     QSZRTVPR retrouver infos sur un produit
 
                     QLZADDLI ajouter des infos de licence
                     QLZAREQ  demander une licence
                     QLZARLS  liberer une licence
 
                     QPZCRTFX créer une PTF
                     QPZGENNM générer un nom de PTF
                     QPZRTVFX retrouver infos sur une PTF
 
 
 
 
 


|    Changer de couleur
 
                  e- Alertes
 
                     QALGENA génération d'une alerte
                     QALSNDA envoi d'une alerte
                     QALRTVA retrouver infos sur une alerte
 
                  f- API Spools
 
                     QSPCRTSP création d'un fichier spool
                     QSPOPNSP ouverture
                     QSPGETSP lecture
                     QSPPUTSP écriture
                     QSPCLOSP fermeture
 
                     QWPZTAFP transformation d'un flot AFP en ASCII
 
                  g- API utilisateurs et autres...
 
                     QUHDSPH  affichage d'un panneau d'aide
                              (choix du cadre de la fenêtre)
 


|    Changer de couleur
 
                     QUSCMDLN affichage d'une fenêtre de saisie de cmde.
                              (sans paramètre)
                     QWCCVTDT conversion de date
                              (type cde CVTDAT)
 
                     QWSSETWS modifier mémorisation clavier
                     QWSQRYWS retrouver mémorisation clavier
 
                     QLICHGLL modifier *LIBL
                     QLICOBJD modifier certains paramètres d'un objet
                     QLIRNMO  renommer, déplacer un objet
 
                     QUSCHGPA modifier les paramètres d'un POOL
                     QWCCHGTN modifier les paramètres expert cache / POOL
 
                     QWCRDTAA retrouver contenu d'une DATA AREA
 
                     QWCRNETA retrouver attributs réseau  (RTVNETA)
                     QWCRSSTS retrouver l'état du système (WRKSYSSTS)
                     QWCRSVAL retrouver valeur système    (RTVSYSVAL)
 


|    Changer de couleur
 
                  h- API de tri
 
                     QLGCNVSS convertir une table de tri
                     QLGRTVLI retrouver le code langue
                     QLGRTVSS retrouver contenu d'une table
                     QLGVLID  valider un code langue
 
                     QLGSRTIO trier en entrée/sortie ou préparer un tri.
                     QLGSORT  trier les données préparées par QLGSRTIO.
 
 
 Il existe aussi des API assez spécifiques qui semblent destinées aux
  développeurs de logiciels systèmes ou aux amoureux des couches basses
  du système.
                 + DSM Dynamic Screen Manager
                        gestion complète des écran via API (5250)
                 + API de débogage
                        uniquement avec les pgm ILE
                 + APi de communication
                        pour réécrire votre modèle (couche hautes)
                        elles s'appuient sur X.25, TOKEN ou ETHERNET





©AF400