/*============================================================================*/
/* This program shows how to create and to run, in an ILE_CL program,         */
/* a MMAIL/EML... command.                                                    */
/* The example shown is related to command MMAIL/EMLSTMF.                     */
/*============================================================================*/
                                                                                
             PGM                                                                
                                                                                
             DCL        VAR(&CMD) TYPE(*CHAR) LEN(2000) +                       
                          VALUE('Command to be executed')                       
             DCL        VAR(&CMDLEN) TYPE(*DEC) LEN(15 5) +                     
                          VALUE(2000) /* Length of the above command */         
                                                                                
             DCL        VAR(&Q) TYPE(*CHAR) LEN(1) VALUE('''') /* +             
                          quote */                                              
             DCL        VAR(&SLASH) TYPE(*CHAR) LEN(1) VALUE('/')               
                                                                                
             DCL        VAR(&SUBJECT) TYPE(*CHAR) LEN(70) /* Subject +          
                          of the e-mail message */                              
             DCL        VAR(&FROMNAME) TYPE(*CHAR) LEN(100) /* +                
                          Sender's name */                                      
             DCL        VAR(&FROMADDR) TYPE(*CHAR) LEN(100) +                   
                          VALUE('Sender''s e-mail address')                     
             DCL        VAR(&RCPNAME) TYPE(*CHAR) LEN(100) /* +                 
                          Recipient's name */                                   
             DCL        VAR(&TOTYPE) TYPE(*CHAR) LEN(4) /* *TO , *CC +          
                          or *BC */                                             
             DCL        VAR(&RCPADDR) TYPE(*CHAR) LEN(100) /* +                 
                          Recipient's address*/                                 
             DCL        VAR(&STMF) TYPE(*CHAR) LEN(180) /* Stream +             
                          file to be attached */                                
             DCL        VAR(&BODYLIB) TYPE(*CHAR) LEN(10) /* Library +          
                          containing the source file for message +              
                          bodies */                                             
             DCL        VAR(&BODYFILE) TYPE(*CHAR) LEN(10) /* Source +          
                          file for message bodies */                            
             DCL        VAR(&BODYMBR) TYPE(*CHAR) LEN(10) /* Source +           
                          member for the body of this message */                
                                                                                
/*============================================================================*/
/* Let us build, in variable &CMD, a MMAIL/EMLSTMF command that sends         */
/* - 2 stream files                                                           */
/* to                                                                         */
/* - 2 *TO recipients                                                         */
/* - 1 *BC recipient                                                          */
/* Let us also provide a source member name for the body of the message.      */
/*============================================================================*/
                                                                                
             CHGVAR     VAR(&CMD) VALUE('MMAIL/EMLSTMF')                        
                                                                                
             /* Add the subject                                               */
             CHGVAR     VAR(&SUBJECT) VALUE('Greetings from Portofino')         
             CHGVAR     VAR(&CMD) VALUE(&CMD *TCAT ' SUBJECT(' *CAT +           
                          &Q *CAT &SUBJECT *TCAT &Q *CAT ')')                   
                                                                                
             /* Add the sender name and address                               */
             CHGVAR     VAR(&FROMNAME) VALUE('Lucy Hamilton')                   
             CHGVAR     VAR(&FROMADDR) VALUE('LHamilt88@gmail.com')             
             CHGVAR     VAR(&CMD) VALUE(&CMD *TCAT ' FROMNAME(' *CAT +          
                          &Q *CAT &FROMNAME *TCAT &Q *CAT ') +                  
                          FROMADDR(' *CAT &Q *CAT &FROMADDR *TCAT &Q +          
                          *CAT ')')                                             
                                                                                
             /* Start the recipients list                                     */
             CHGVAR     VAR(&CMD) VALUE(&CMD *TCAT ' TO(')                      
                                                                                
             /* Add the first *TO recipient                                   */
             CHGVAR     VAR(&TOTYPE) VALUE('*TO')                               
             CHGVAR     VAR(&RCPNAME) VALUE('Diane Kenneth')                    
             CHGVAR     VAR(&RCPADDR) VALUE('DKerr@bluesys.net')                
             CHGVAR     VAR(&CMD) VALUE(&CMD *TCAT &Q *CAT &RCPADDR +           
                          *TCAT &Q *CAT &SLASH *CAT &Q *CAT +                   
                          &RCPNAME *TCAT &Q *CAT &SLASH *CAT &TOTYPE)           
                                                                                
             /* Add the second *TO recipient                                  */
             CHGVAR     VAR(&TOTYPE) VALUE('*TO')                               
             CHGVAR     VAR(&RCPNAME) VALUE('Jim Kerry')                        
             CHGVAR     VAR(&RCPADDR) VALUE('kerry207@yahoo.com')               
             CHGVAR     VAR(&CMD) VALUE(&CMD *TCAT ' ' *CAT &Q *CAT +           
                          &RCPADDR *TCAT &Q *CAT &SLASH *CAT &Q +               
                          *CAT &RCPNAME *TCAT &Q *CAT &SLASH *CAT +             
                          &TOTYPE)                                              
                                                                                
             /* Add the third *BC recipient                                   */
             CHGVAR     VAR(&TOTYPE) VALUE('*BC')                               
             CHGVAR     VAR(&RCPNAME) VALUE('Mum Jane')                         
             CHGVAR     VAR(&RCPADDR) VALUE('JaneBristol@bristolf.net')         
             CHGVAR     VAR(&CMD) VALUE(&CMD *TCAT ' ' *CAT &Q *CAT +           
                          &RCPADDR *TCAT &Q *CAT &SLASH *CAT &Q +               
                          *CAT &RCPNAME *TCAT &Q *CAT &SLASH *CAT +             
                          &TOTYPE)                                              
                                                                                
             /* End the recipient list                                       */ 
             CHGVAR     VAR(&CMD) VALUE(&CMD *TCAT ')')                         
                                                                                
             /* Start the attachments list                                    */
             CHGVAR     VAR(&CMD) VALUE(&CMD *TCAT ' STMF(')                    
                                                                                
             /* Add the first attachment                                      */
             CHGVAR     VAR(&STMF) VALUE('/mmail/image/portofino1.jpg')         
             CHGVAR     VAR(&CMD) VALUE(&CMD *TCAT &Q *CAT &STMF +              
                          *TCAT &Q)                                             
                                                                                
             /* Add the second attachment                                     */
             CHGVAR     VAR(&STMF) VALUE('/mmail/image/portofino2.jpg')         
             CHGVAR     VAR(&CMD) VALUE(&CMD *TCAT ' ' *CAT &Q *CAT +           
                          &STMF *TCAT &Q)                                       
                                                                                
             /* Close the attachments list                                    */
             CHGVAR     VAR(&CMD) VALUE(&CMD *TCAT ')')                         
                                                                                
             /* Add the message body source member                            */
             CHGVAR     VAR(&BODYLIB) VALUE('QTEMP')                            
             CHGVAR     VAR(&BODYFILE) VALUE('QTXTSRC')                         
             CHGVAR     VAR(&BODYMBR) VALUE('M828')                             
             CHGVAR     VAR(&CMD) VALUE(&CMD *TCAT ' MSGM(' *CAT +              
                          &BODYLIB *TCAT &SLASH *CAT &BODYFILE +                
                          *TCAT &SLASH *CAT &BODYMBR *TCAT ')')                 
                                                                                
/*============================================================================*/
/* The command looks as follow:                                               */
/*                                                                            */
/* MMAIL/EMLSTMF SUBJECT('Greetings from Portofino')                          */
/*  FROMNAME('Lucy Hamilton')                                                 */
/*  FROMADDR('LHamilt88@gmail.com')                                           */
/*  TO('DKerr@bluesys.net'/'Diane Kenneth'/*TO                                */
/*     'kerry207@yahoo.com'/'Jim Kerry'/*TO                                   */
/*     'JaneBristol@bristolf.net'/'Mum Jane'/*BC)                             */
/*  STMF('/mmail/image/portofino1.jpg' '/mmail/image/portofino2.jpg')         */
/*  MSGM(QTEMP/QTXTSRC/M828)                                                  */
/*                                                                            */
/* Let us execute it:                                                         */
/*============================================================================*/
             CALL       PGM(QSYS/QCMDEXC) PARM(&CMD &CMDLEN)                    
                                                                                
             RETURN                                                             
             ENDPGM