Bitte sehr, Home und Jarname kannste noch anpassen, je nachdem wo die Objekte liegen. Der Rest sollte selbst erklärend sein.

/* Batch Excel Transfer mit ACS */
/* ---------------------------------------- mylogic.io */
PGM PARM(&LIB &FILE &XLSFILE &HEAD)

DCL VAR(&LIB) TYPE(*CHAR) LEN(10)
DCL VAR(&FILE) TYPE(*CHAR) LEN(10)
DCL VAR(&XLSFILE) TYPE(*CHAR) LEN(100)
DCL VAR(&SYSNAME) TYPE(*CHAR) LEN(8)
DCL VAR(&HEAD) TYPE(*CHAR) LEN(1)
DCL VAR(&JAVA) TYPE(*CHAR) LEN(1500)

DCL VAR(&HOME) TYPE(*CHAR) LEN(50) +
VALUE('/QOpenSys/QIBM/ProdData/JavaVM/jdk80/64bit')
DCL VAR(&JARNAME) TYPE(*CHAR) LEN(50) +
VALUE('/QIBM/ProdData/Access/ACS/Base/acsbundle.jar')

/* Check Parameters */
IF COND((&LIB *EQ ' ') *OR (&FILE *EQ ' ') *OR +
(&XLSFILE *EQ ' ')) THEN(RETURN)

/* Get System Name */
RTVNETA SYSNAME(&SYSNAME)

/* Set Environment */
ADDENVVAR ENVVAR(JAVA_HOME) VALUE(&HOME) LEVEL(*JOB) +
REPLACE(*YES)
MONMSG MSGID(CPF0000)
/* Set no Messages */
ADDENVVAR ENVVAR(QIBM_QSH_CMD_OUTPUT) VALUE(NONE) +
LEVEL(*JOB) REPLACE(*YES)
MONMSG MSGID(CPF0000)

/* Create Java String */
CHGVAR VAR(&JAVA) VALUE('java +
-Dcom.ibm.iaccess.ActLikeExternal=true -jar')
CHGVAR VAR(&JAVA) VALUE(&JAVA *bcat &JARNAME)
CHGVAR VAR(&JAVA) VALUE(&JAVA *bcat +
'/plugin=cldownload /system=')
/* add Systemname */
CHGVAR VAR(&JAVA) VALUE(&JAVA *tcat &SYSNAME)
CHGVAR VAR(&JAVA) VALUE(&JAVA *bcat '/clientfile=')

/* add XLS Filename (/Pfad/File.xlsx) */
CHGVAR VAR(&JAVA) VALUE(&JAVA *tcat &XLSFILE)

/* SQL String */
CHGVAR VAR(&JAVA) VALUE(&JAVA *bcat '/sql="select * +
from')
CHGVAR VAR(&JAVA) VALUE(&JAVA *BCAT &LIB *TCAT '/' +
*CAT &FILE)
CHGVAR VAR(&JAVA) VALUE(&JAVA *tcat '"')

/* Header Columns 0=keine, 1=Feldnamen */
SELECT
WHEN COND(&HEAD *EQ ' ') THEN(CHGVAR VAR(&JAVA) +
VALUE(&JAVA *BCAT '/colheadings=0'))
WHEN COND(&HEAD *EQ 'F') THEN(CHGVAR VAR(&JAVA) +
VALUE(&JAVA *BCAT '/colheadings=1'))

/* Header Columns Bezeichnung */
WHEN COND(&HEAD *EQ 'H') THEN(CHGVAR VAR(&JAVA) +
VALUE(&JAVA *BCAT '/usecollabels'))
ENDSELECT

/* Java Call */
QSH CMD(&JAVA)
RMVENVVAR ENVVAR(JAVA_HOME) LEVEL(*JOB)
MONMSG MSGID(CPF0000)

ENDPGM