Pgm d'exit pour la fonction dossiers partagés.

BoTTom |
             PGM        PARM(&VALID &PARAM)
             DCL        VAR(&VALID) TYPE(*CHAR) LEN(1)
             DCL        VAR(&PARAM) TYPE(*CHAR) LEN(512)
             DCL        VAR(&LGPATH) TYPE(*DEC) LEN(9 0)
             DCL        VAR(&UNICODE) TYPE(*CHAR) LEN(128)
             DCL        VAR(&PATH) TYPE(*CHAR) LEN(64)
 
/*********************************************************************/
/*QIBM_QPWSF_FIle_Serveur : serveur de fichier V3R10                 */
/*                                                                   */
/*Format PWFS0100 :  - CHAR(10)   Profil utilisateur                */
/*                   - CHAR(10)   fonction = '*FILESRV'              */
/*                   - BIN(4) Action : 1 = modif des attributs       */
/*                                     2 = création (STMF ou director*/
/*                                     3 = supression ( "       "    */
/*                                     4 = liste des attributs       */
/*                                     5 = MOV                       */
/*                                     6 = OPEN                      */
/*                                     7 = RNM                       */
/*                                     8 = Allocate d'une conversatio*/
/*                   - CHAR(8) format = 'PWFS0100'                   */
/*                   - CHAR(4)  type d'ouverture (1=oui, 0=non)      */
/*                                       - CHAR(1) Read              */
/*                                       - CHAR(1) write             */
/*                                       - CHAR(1) Read/write        */
/*                                       - CHAR(1) delete possible   */
/*   37 A 40         - BIN(4)  lg du nom de fichier                  */
/*   41 A --         - CHAR(??) nom du fichier                       */
/*                                                                   */
/*********************************************************************/
/* EXTRACTION DES PARAMETRES                                         */
             CHGVAR     VAR(&LGPATH) VALUE(%BIN(&PARAM 37 4))
             IF         COND(&LGPATH > 128) THEN(CHGVAR VAR(&LGPATH) +
                          VALUE(128))
             CHGVAR     VAR(&UNICODE) VALUE(%SST(&PARAM 41 &LGPATH))
/* CVT UNICODE -> EBCDIC                                             */
             CALL UNICODE PARM(&UNICODE 128 &PATH)
/* REFUS SI CHEMIN COMMENCE PAR QSYS.LIB                             */
             IF (%SST(&PATH 1 9) = '/QSYS.LIB') CHGVAR &VALID '0'
/* SINON OK                                                          */
             ELSE CHGVAR &VALID '1'
             ENDPGM




©AF400