fonction RTVMBRLIBF et Appel en format libre

BoTTom |
     Frtvmbrlibdcf   e             workstn
      *=====================================
      *=  retrouve la bibliothèque du
      *=   fichier contenant un membre précis.
      *=
      *=  on donne le nom du fichier
      *=           le nom du membre  sur un écran.
      *=
      *=  le programme principale qui gère l'écran
      *=     utilise une fonction qui masque
      *=     l'appel à l'API QUSMBRD.
      *=====================================
      * définition de la procédure
     DRTVMBRLIBF       PR            10
     D FICHIER                       10    CONST
     D MEMBRE                        10    CONST
      *
      * données globales
     Dfichier          S             10    INZ('QCLSRC')
     Dmembre           S             10    INZ('QSTRUP')
     Dbibliotheq       S             10    INZ('QSTRUP')
 
      * pgm principal
      *
     c                   exfmt     win
     c                   dow       not *in03
     C                   eval      bibliotheq = rtvmbrlibf(fichier : membre)
     c                   if        bibliotheq <> *blank
     C                   eval      bib = 'Bibliothèque ' + bibliotheq
     c                   else
     C                   eval      bib = 'Membre non trouvé'
     c                   endif
     c                   exfmt     win
     c                   enddo
 
     C                   eval      *inlr = *on
      * procédure
      *                            (peut être utilisée par d'autres pgms)
     P rtvmbrlibf      B                   EXPORT
      * Définition de l'Interface de procédure  (PI)
      *  doit être conforme avec le prototype.
     D                 PI            10
     D objet                         10    CONST
     D membre                        10    CONST


|
 
      * définitions locales
     DQUSRMBRD         PR                  EXTPGM('QUSRMBRD')
     D rcvvar                        28    options(*varsize)
     D rcvvarlg                      10I 0 const
     D format                         8    const
     D objlib                        20    const
     D membre                        10    const
     D ovr                            1    const
     D errcode                        8    const
     D libl                           1    const
 
      * variables locales
     Drcvvar           DS
     D filler                        18
     D biblio                        10
     Derrds            DS
     D error                          5I 0 inz(%size(errds))
     D suite                          5I 0 inz(0)
 
 
 
      * traitement
      *
      * appel de l'API QUSMBRD (information sur un membreà) en format libre
      *
      * paramètres:  1/ variable en retour
      *              2/ lg de 1/
      *              3/ format (structure) MBRD0100
      *              4/ objet - blibliothèque
      *              5/ membre
      *              6/ tenir compte des OVRDBF ?
      *              7/ code erreur en retour
      * cette API a un nouveau paramètre (le 8/ et dernier)
      *
      *     '0' on recherche le membre dans le premier fichier de *LIBL
      *     '1' on recherche dans *LIBL tous les fichiers du nom indiqué
      *        jusqu'à ce que l'on trouve le membre. (éventuellement)
      *
     C                   CALLP     QUSRMBRD(rcvvar : %size(rcvvar) :
     C                             'MBRD0100' : objet + '*LIBL' : membre :
     C                             '0' : errds : '1')
     C                   RETURN    biblio
     P rtvmbrlibf      E





©AF400