Hallo,

dieses Tool hatte ich auch mal bei mir installiert. Aber es hat mir den Befehl CHGNETA aus der QSYS gelöscht. Das ist natürlich nicht so toll.

Man kann sich selbst ein CL + CMD erstellen welches dann das entsprechende AS/400 API aufruft.
QCLSRC/ADDSHARE Code:
Code:
0001.00 /*****************************************************************/
0002.00 /* IFS FREIGABE ERSTELLEN                                        */
0003.00 /*****************************************************************/
0004.00 PGM PARM(&SHARENAME &PATHNAME &TEXTDESC &PERMS &MAXUSERS)
0005.00 DCL VAR(&SHARENAME ) TYPE(*CHAR) LEN(12)
0006.00 DCL VAR(&PATHNAME )  TYPE(*CHAR) LEN(20)
0007.00 DCL VAR(&PATHNAMEL)  TYPE(*CHAR) LEN(4)
0008.00 DCL VAR(&CCSPATHN)   TYPE(*CHAR) LEN(4)
0009.00 DCL VAR(&TEXTDESC)   TYPE(*CHAR) LEN(50)
0010.00 DCL VAR(&PERMS)      TYPE(*CHAR) LEN(4)
0011.00 DCL VAR(&PERMSP)     TYPE(*CHAR) LEN(4)
0012.00 DCL VAR(&MAXUSERS)   TYPE(*CHAR) LEN(4)
0013.00 DCL VAR(&MAXUSERSP)  TYPE(*CHAR) LEN(4)
0014.00 DCL VAR(&ERRORCODE)  TYPE(*CHAR) LEN(255)
0015.00 DCL &LENGTH *DEC LEN(2) VALUE(20)
0016.00 DCL &LENGTHC *CHAR LEN(4)
0017.00 CHGVAR     VAR(%BIN(&CCSPATHN)) VALUE(0)
0018.00 CHGVAR     VAR(%BIN(&MAXUSERSP)) VALUE(&MAXUSERS)
0019.00 CHGVAR     VAR(%BIN(&PERMSP)) VALUE(&PERMS)
0020.00 LOOP:                                                                   
0021.00 IF (%SUBSTRING(&PATHNAME &LENGTH 1) *EQ ' ') (DO)
0022.00     CHGVAR VAR(&LENGTH) VALUE(&LENGTH - 1)
0023.00     IF (&LENGTH *EQ 0) GOTO CMDLBL(EXIT)
0024.00     GOTO CMDLBL(LOOP)
0025.00 ENDDO
0026.00 CHGVAR VAR(&LENGTHC) VALUE(&LENGTH)
0027.00 CHGVAR VAR(%BIN(&PATHNAMEL)) VALUE(&LENGTHC)
0028.00 CALL       PGM(QZLSADFS) +
0029.00                 PARM(&SHARENAME  +
0030.00                      &PATHNAME   +
0031.00                      &PATHNAMEL  +
0032.00                      &CCSPATHN   +
0033.00                      &TEXTDESC   +
0034.00                      &PERMSP     +
0035.00                      &MAXUSERS   +
0036.00                      &ERRORCODE)
0037.00 IF (&ERRORCODE *NE '*') +
0038.00    SNDPGMMSG MSG('ERROR CODE:' *CAT &ERRORCODE)
0039.00    ELSE SNDPGMMSG MSG('Freigabe erfolgreich erstellt')
0040.00 EXIT:
0041.00 ENDPGM
QCMDSRC/ADDSHARE Code:
Code:
0001.00              CMD        PROMPT('IFS Ordner freigeben')
0002.00              PARM       KWD(SHARENAME) TYPE(*CHAR) LEN(12) +
0003.00                           CHOICE('Neue Freigabe (MAX:12 Zeichen)') +
0004.00                           PMTCTL(*PMTRQS) PROMPT('Freigabename')
0005.00              PARM       KWD(PATHNAME) TYPE(*CHAR) LEN(20) +
0006.00                           CHOICE('Muss mit / beginnen') +
0007.00                           PMTCTL(*PMTRQS) PROMPT('IFS Pfad') /* +
0008.00                           'First char must be slash U/U' */
0009.00              PARM       KWD(TEXTDESC) TYPE(*CHAR) LEN(50) +
0010.00                           CHOICE('Freigabe Bemerkung') +
0011.00                           PMTCTL(*PMTRQS) PROMPT('Freigabe +
0012.00                           Bemerkung') /* 'Share comment' */
0013.00              PARM       KWD(PERMS) TYPE(*CHAR) LEN(4) RTNVAL(*NO) +
0014.00                           RSTD(*YES) DFT(1) VALUES(1 2) +
0015.00                           CHOICE('Berechtigung (1: R/O, 2:R/W)') +
0016.00                           PMTCTL(*PMTRQS) PROMPT('Berechtigung') /* +
0017.00                           '1: READ/ONLY 2:READ/WRITE' */
0018.00              PARM       KWD(MAXUSERS) TYPE(*CHAR) LEN(4) RSTD(*NO) +
0019.00                           DFT(-1) RANGE(-1 255) CHOICE('Max User  +
0020.00                           (-1 to 255,-1:NOMAX)') PMTCTL(*PMTRQS) +      
0021.00                           PROMPT('Maximale Benutzer')
Gruß
Matthias