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
Bookmarks