The MAILSEND is a CL program that shows how to send a mail with an attached file and a high priority.
You can edit the source code from the QCLSRC file in the LAUNCHER Office library and change the parameters with you own.
Here are the default values :
CHGVAR VAR(&ADDR) VALUE('INFO@THECOMPAGNY.COM')
CHGVAR VAR(&SUBJ) VALUE('THE CUSTOMER LIST')
CHGVAR VAR(&MESG) VALUE('Hello,%PARA%%PARA%Here +
is the list of the customers you +
required. The file comes from our AS/400. +
Isn''t this great ?%PARA%%PARA%See you +
soon !')
Source
PGM
/* VARIABLES USED TO OPEN COMMUNICATION AND SEND COMMANDS ...*/
DCL VAR(&HANDLE) TYPE(*CHAR) LEN(50) VALUE('*ONLY')
DCL VAR(&SVRADDR) TYPE(*CHAR) LEN(30) VALUE('*DEV')
DCL VAR(&CCSID) TYPE(*CHAR) LEN(10) VALUE('*JOB')
DCL VAR(&CMD) TYPE(*CHAR) LEN(10)
DCL VAR(&OPT) TYPE(*CHAR) LEN(1)
DCL VAR(&PARM1) TYPE(*CHAR) LEN(512)
DCL VAR(&PARM2) TYPE(*CHAR) LEN(1024)
DCL VAR(&RESULT) TYPE(*CHAR) LEN(512)
DCL VAR(&MSGID) TYPE(*CHAR) LEN(7)
DCL VAR(&MSG1) TYPE(*CHAR) LEN(80)
DCL VAR(&MSG2) TYPE(*CHAR) LEN(80)
/* VARIABLES FOR THE MAIL */
DCL VAR(&ADDR) TYPE(*CHAR) LEN(64)
DCL VAR(&SUBJ) TYPE(*CHAR) LEN(64)
DCL VAR(&MESG) TYPE(*CHAR) LEN(512)
CHGVAR VAR(&ADDR) VALUE('INFO@THECOMPAGNY.COM')
CHGVAR VAR(&SUBJ) VALUE('THE CUSTOMER LIST')
CHGVAR VAR(&MESG) VALUE('Hello,%PARA%%PARA%Here +
is the list of the customers you +
required. The file comes from our AS/400. +
Isn''t this great ?%PARA%%PARA%See you +
soon !')
/* OPEN THE SESSION */
CALL PGM(LNCOPEN) PARM(&HANDLE &SVRADDR &CCSID)
MONMSG MSGID(LNC0000) EXEC(GOTO CMDLBL(ERROR))
/* CONNECT TO THE SERVER ...*/
/* MESSAGE IS SENT TO RECIPIENT &ADDR */
/* SUBJECT IS &SUBJ AND MESSAGE IS &MESG */
/* */
CHGVAR VAR(&CMD) VALUE('MAILPREP')
CHGVAR VAR(&PARM1) VALUE(&ADDR)
CHGVAR VAR(&PARM2) VALUE(&SUBJ)
CALL PGM(LNCCMD) PARM(&HANDLE &CMD &OPT &PARM1 +
&PARM2 &RESULT)
IF COND(%SST(&RESULT 1 5) =
SNDMSG MSG(&RESULT) TOUSR(QPGMR)
SUI:
/* TRANSFER THE SP_CUST FILE AND ATTACH IT TO THE MAIL */
CHGVAR VAR(&CMD) VALUE('DBFXFER')
CHGVAR VAR(&PARM1) VALUE('%LNCDIR%\SAMPLES\SP_CUST.TXT')
CHGVAR VAR(&PARM2) VALUE('LAUNCHER/SP_CUST')
CALL PGM(LNCCMD) PARM(&HANDLE &CMD &OPT &PARM1 +
&PARM2 &RESULT)
MONMSG MSGID(LNC0000) EXEC(GOTO CMDLBL(ERROR))
/* ATTACH THE FILE */
CHGVAR VAR(&CMD) VALUE('MAILATT')
CHGVAR VAR(&PARM1) VALUE('%LNCDIR%\SAMPLES\SP_CUST.TXT')
CHGVAR VAR(&PARM2) VALUE(' ')
CALL PGM(LNCCMD) PARM(&HANDLE &CMD &OPT &PARM1 +
&PARM2 &RESULT)
MONMSG MSGID(LNC0000) EXEC(GOTO CMDLBL(ERROR))
/* SET THE MESSAGE BODY */
CHGVAR VAR(&CMD) VALUE('MAILTEXT')
CHGVAR VAR(&PARM1) VALUE(&MESG)
CHGVAR VAR(&PARM2) VALUE(' ')
CALL PGM(LNCCMD) PARM(&HANDLE &CMD &OPT &PARM1 +
&PARM2 &RESULT)
MONMSG MSGID(LNC0000) EXEC(GOTO CMDLBL(ERROR))
/* SET THE PRIORITY */
CHGVAR VAR(&CMD) VALUE('MAILPRTY')
CHGVAR VAR(&PARM1) VALUE('*HIGH')
CHGVAR VAR(&PARM2) VALUE(' ')
CALL PGM(LNCCMD) PARM(&HANDLE &CMD &OPT &PARM1 +
&PARM2 &RESULT)
MONMSG MSGID(LNC0000) EXEC(GOTO CMDLBL(ERROR))
/* SEND THE MESSAGE */
CHGVAR VAR(&CMD) VALUE('MAILSEND')
CHGVAR VAR(&PARM1) VALUE(' ')
CHGVAR VAR(&PARM2) VALUE(' ')
CALL PGM(LNCCMD) PARM(&HANDLE &CMD &OPT &PARM1 +
&PARM2 &RESULT)
MONMSG MSGID(LNC0000) EXEC(GOTO CMDLBL(ERROR))
CHGVAR VAR(&CMD) VALUE('MAILEND')
CHGVAR VAR(&PARM1) VALUE(' ')
CHGVAR VAR(&PARM2) VALUE(' ')
CALL PGM(LNCCMD) PARM(&HANDLE &CMD &OPT &PARM1 +
&PARM2 &RESULT)
MONMSG MSGID(LNC0000) EXEC(GOTO CMDLBL(ERROR))
CLOSE:
/* END OF COMMUNICATION WITH THE SERVER STATION ... */
CHGVAR VAR(&CMD) VALUE('END ')
CHGVAR VAR(&PARM1) VALUE(' ')
CHGVAR VAR(&PARM2) VALUE(' ')
CALL PGM(LNCCMD) PARM(&HANDLE &CMD &OPT +
&PARM1 &PARM2 &RESULT)
MONMSG MSGID(LNC0000) EXEC(GOTO CMDLBL(ERROR))
GOTO END
ERROR:
CALL PGM(LNCCLOSE) PARM(&HANDLE)
RCVMSG MSG(&MSG1) SECLVL(&MSG2) MSGID(&MSGID)
SNDPGMMSG MSGID(CPF9898) MSGF(QSYS/QCPFMSG) +
MSGDTA('ERROR !!!!!! ' *CAT &MSGID *CAT ' +
' *CAT &MSG1 *CAT ' ' *CAT &MSG2) +
MSGTYPE(*ESCAPE)
GOTO CLOSE
END:
ENDPGM