procédure cataloguée retournant USRLIBL

BoTTom |
      *
      *  ce pgm appel DSPLIBLC (rtvlibl) qui lui retourne un tableau
      *   contenant *LIBL (partie système puis utilisateur)
      *  Il doit la retourner sous forme d'une DS à occurence.
      *
     DDSlibl           ds                  occurs(265)
     D   unebib                      10
     DUSRlibl          ds
     d tblibl                        11    dim(265)
 
     D i               S              5I 0
     D R               S              5I 0
 
     Drtvlibl          PR                  EXTPROC('DSPLIBLC')
     D                             2750
 
      /free
       rtvlibl(USRLIBL);
 
       for i=1 to 265;
         if tblibl(i) = *blanks and i > 15; // on est dans USRLIBL
            leave;
    // chargement d'une occurence avec un poste du tableau
         else;
            if tblibl(i) <> *blanks;
                R = R + 1;
                %occur(DSlibl) = R;
                unebib = tblibl(i);
            endif;
         endif;
        endfor;
      /end-free
 
      * renvoi de la DS en tant que "pseudo-curseur" au client(VB, JAVA ...)
 
     C/EXEC SQL
     C+ SET RESULT SETS  ARRAY :DSLIBL FOR :R ROWS
     C/END-EXEC
 
      /free
        return;
      /end-free




©AF400