1. Copy FM 'BRAN_DIR_CREATE' to a custom FM 'ZBRAN_DIR_CREATE'.
2. Change the TYPE to STRING from BRANINT-DIRNAME for import parameter DIRNAME
3. Change/Increase the length by 50 or more for the field COMMAND1 in source code line# 11.
4. Change COMMAND1+9(55) = DIRNAME. to COMMAND1+9(105) = DIRNAME.
FUNCTION ZBRAN_DIR_CREATE.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" VALUE(DIRNAME) TYPE STRING
*" EXCEPTIONS
*" ALREADY_EXISTS
*" CANT_CREATE
*"----------------------------------------------------------------------
DATA: COMMAND1(120),
SRVNAME(20),
BEGIN OF TABL OCCURS 0,
LINE(200),
END OF TABL.
DATA: BEGIN OF FILE_LIST OCCURS 0.
INCLUDE STRUCTURE MSXXLIST.
DATA: END OF FILE_LIST.
CLEAR FILE_LIST.
SRVNAME = SPACE.
CALL FUNCTION 'RZL_READ_DIR'
EXPORTING NAME = DIRNAME
SRVNAME = SRVNAME
TABLES FILE_TBL = FILE_LIST
EXCEPTIONS NOT_FOUND = 1
ARGUMENT_ERROR = 2
SEND_ERROR = 3.
IF SY-SUBRC EQ 0.
RAISE ALREADY_EXISTS.
ENDIF.
COMMAND1(9) = 'mkdir -p '.
COMMAND1+9(105) = DIRNAME.
CALL 'SYSTEM' ID 'COMMAND' FIELD COMMAND1
ID 'TAB' FIELD TABL-*SYS*.
CLEAR FILE_LIST.
SRVNAME = SPACE.
CALL FUNCTION 'RZL_READ_DIR'
EXPORTING NAME = DIRNAME
SRVNAME = SRVNAME
TABLES FILE_TBL = FILE_LIST
EXCEPTIONS NOT_FOUND = 1
ARGUMENT_ERROR = 2
SEND_ERROR = 3.
IF SY-SUBRC NE 0.
RAISE CANT_CREATE.
ENDIF.
ENDFUNCTION.