OPALE - 10.0 - Usage - E-mailing a PDF file
MAPSNDMAIL
Sommaire
Introduction
Thanks to Opale and the MAPSNDMAIL command, you can now send e-mails that have PDF documents attached to them and a customised HTML body.
The MAPSNDMAIL command uses a Designer template ("Mapping format" parameter) to build the e-mail around it. The template has to be generated in PDF. It has to include INDEX type zones used as dynamic data in the subject, naming of the attachments or in the body of the e-mail.
General principles of the MAPSNDMAIL command
The MAPSNDMAIL command on IBM i uses multiple parameters:
Spooled file . . . . . . . . . . Name Spooled file name Spooled file number . . . . . . *LAST *LAST *ONLY 000000-999999 Spooled file number Job Name . . . . . . . . . . . . *CURRENT Name, *CURRENT , *DEV Job name Job number . . . . . . . . . . . 000000-999999 Job number User . . . . . . . . . . . . . . *CURRENT Name User Mapping format . . . . . . . . . Character value,10 max. Designer Format Sequence . . . . . . . . . . . . *ALL *MRG 00000-99999 Designer project sequence number Delete file . . . . . . . . . . N Y, N Delete the original spooled file? Start page . . . . . . . . . . . 1 Integer, *SPL Starting page number End page . . . . . . . . . . . . 999999 Integer, *SPL, *LAST Ending page number Original State . . . . . . . . . 'READY' HOLD, READY Email status? PRIORITY . . . . . . . . . . . . '3' 1, 2, 3, 4, 5 Sending priority Send from . . . . . . . . . . . *USER Email sender Send TO . . . . . . . . . . . . _______________________________________________ Email recipient Send CC . . . . . . . . . . . . _______________________________________________ Carbon Copie(s) Send CCI . . . . . . . . . . . . _______________________________________________ Blind Carbon Copie(s) Subject . . . . . . . . . . . . _______________________________________________ Email subject Note . . . . . . . . . . . . . . _______________________________________________ Email body Name of this file in the mail . 'Doc.pdf' Name of the PDF file sent via email Path and name of the file . . . ________________________________________________ Path of a potential additional attachment Name of this file in the mail . ________________________________________________ Name of a potential additional attachment Delete mail after send . . . . . 'N' Y, N, O Delete the email after it was send Delete file1 after send . . . . 'N' Y, N, O Delete the first attachment Delete file2 after send . . . . 'N' Y, N, O Delete the second attachment Other parameters Code Page . . . . . . . . . . . *SPL *SPL, 037,1147 Specify a code page
The menu that allows you to send e-mails is called MAPSND. To access it, run command:
GO MAPSND
1. E-mail configuration
This screen is only accessible if you have been granted SECOFR rights.
SMTP server IP address Name of the SMTP server SMTP server port (25) Connection port number SMTP server domain SMTP server domain name Temporary folder Temporary folder (MAPSEND folder by default) The temporary folder is where PDF files that where sent via e-mail are stored, users who send e-mails need access to read and modify this folder. Waiting Dtaq ***detail to be completed*** by default: MAPSMTP MAPSMTP is the default DTAQ (created upon installation), it allows the Mapping robot to send the spooled files automatically to the e-mail server. This DTAQ needs to exist. Sending jobd ***detail to be completed*** by default: MAPDSMTP2 MAPDSMTP2 is the default JOBD (created upon installation). It defines the properties of the robot's e-mail sending jobs. This JOBD needs to exist. Action if success ***detail to be completed*** *USER Three possible values: - *NONE. By default, no command is run. - *USER. By default, the SNDUSRMSG TOUSR(&USER) command is run. - *SYSOPR. By default, the SNDUSRMSG TOUSR(*SYSOPR) command is run. Action if error ***detail to be completed*** *USER Success and error reactions are managed in the MAP_C031P9 program. Sources of this program can be found in the MAP_SPECIF file of the installation library. Three possible values: - *NONE. By default, no command is run. - *USER. By default, the SNDUSRMSG TOUSR(&USER) command is run. - *SYSOPR. By default, the SNDUSRMSG TOUSR(*SYSOPR) command is run.
2. Starting e-mail management
This menu allows you to start the MAPSMTP job of the sub-system. To send e-mails via the MAPSNDMAIL command, this job needs to be started. This menu calls the STRMAPMAIL command.
3. Stop mail
This menu allows you to stop the MAPSMTP job of the sub-system. This menu calls the ENDMAPMAIL command.
4. Affichage de la file d'attente des mails
Ce menu permet d'afficher l'historique des envois d'e-mail. Il est possible de filtrer par nom d'utilisateur. Ce menu appelle la commande MAPDSPMAIL.
Attention : L'accès à ce menu bloque les nouveaux envois d'e-mail. Il ne faut donc pas le laisser ouvert.
5. Envoi d'un mail
Ce menu permet l'envoi d'un e-mail avec ou sans pièce-jointe. Ce menu appelle la commande MAPSNDDST.
6. Envoi d'un spool par mail
Ce menu permet le maquettage d'un fichier spool AS/400 ainsi que sa conversion en PDF et son envoi par e-mail. Ce menu appelle la commande MAPSNDMAIL.
7. Contrôle du fonctionnement du mail
Ce menu permet de lister les travaux du sous-système liés à l'envoi d'e-mail (en l’occurrence MAPSMTP).
8. Gérer les fichiers spoules (exécution interactive de MAPPING)
Ce menu permet de gérer les fichiers spool. Cette fonctionnalité est la même que l'option 1 du menu GO MAPPING. Ce menu appelle la commande COGISPLF.
Mots-clés utilisés pour mapper automatiquement des données du fichier spool en entrée
Comme vu précédemment, un prérequis de la commande MAPSNDMAIL est la conception d'une maquette M-Designer avec une génération en langage PDF. Pour obetnir le contenu du fichier spool directement dans le corps de l'e-mail ou avoir l'adresse du destinaire et de l'émetteur pris dans le fichier spool, il existe plusieurs zones dans M-designer (type de zone METADATA) :
Liste des mots clés
- mapFrom : Utilisé pour prendre l'adresse e-mail de l'expéditeur dans le fichier spool
- mapSend : Utilisé pour prendre l'adresse e-mail de destinataire de l'expéditeur dans fichier spool
- mapCopy : Utilisé pour prendre l'adresse e-mail de copy dans le fichier spool
- mapBCopy : Utilisé pour prendre l'adresse e-mail de copie cachée dans le fichier spool
- mapNote : Utilisé pour prendre des données du fichier spool et le mettre dans le corps de l'e-mail envoyé
- mapSubject : Utilisé pour prendre des données du fichier spool et le mettre dans le sujet de l'e-mail envoyé
Utilisation des mots clés
Pour utiliser les mots clés paramétrés dans le projet M-Designer (listés ci-dessus), il faut y faire référence dans la commande MAPSNDMAIL.
Pour ce faire, voici la liste des paramètres de la commande MAPSNDMAIL avec leurs valeurs respectives :
Nom du paramètre de la commande MAPSNDMAIL | Valeur pour faire référence aux métadonnées de M-Designer |
---|---|
Send FROM (FROM) | *MAPFROM |
Send TO (TO) | *MAPSEND |
Send CC (CC) | *MACOPY |
Send CCI (CCI) | *MAPBCOPY |
Subject (SUBJECT) | *MAPSUBJCT |
Note (NOTE) | *MAPNOTE |
Paramétrage
Paramétrage de la variable d'environnement pour définir l'expéditeur des emails
L'adresse e-mail expéditrice des e-mails et son mot de passe doivent être configurés dans des variables d'environnements du serveur MAPPING. Pour ce faire :
1) Taper la commande :
WRKENVVAR
2) Créer les variables d'environnement en *SYS pour le fonctionnement avec le sous-système de Mapping contenant l'adresse e-mail et le mot de passe pour l'authentification du serveur SMTP
MAIL_PASSWORD MONMOTDEPASSE MAIL_LOGIN MONADRESSEMAIL
L'adresse e-mail de l'expéditeur stipulée dans la commande MAPSNDMAIL devra être MONADRESSEMAIL.
PS : Dans le cas d'un envoi avec des expéditeurs variables (provenant du spool par exemple), une configuration du serveur SMTP est généralement possible pour autoriser les envois de mail à partir de n'importe quelle adresse mail.
Paramétrage de serveur d'envoi d'emails
Sur l'option 1 du menu GO MAPSND, il faut renseigner les informations du serveur d'envoi d'e-mails :
- Adresse IP du serveur
- Port du serveur
- Domaine du serveur
Attention : Il faut absolument posséder un profil SECOFR pour accéder à ce menu. Si tel n'est pas le cas, l'accès au menu sera impossible et aucun message ne sera affiché.
Exemples
Envoi simple d'un email avec PDF joint
MAPSNDMAIL SPLF(FACTURE) SPLNUM(23) JOB(QPADEV0009) JOBNUM(855068) USER(JDIEU) MAPNAM(MAIL_DOC) MAPSEQ(00010) DELSPL(N) PAGSTR(1) PAGEND(10) STATE(READY)FROM('hotline@mappingsuite.onmicrosoft.com')
TO('jdieu@mappingsuite.onmicrosoft.com') SUBJECT('Mon sujet') NOTE('Ceci est mon corps demail') NAME1('PJ.pdf')
Envoi simple d'un email avec un corps d'email texte dynamique
MAPSNDMAIL SPLF(FACTURE) SPLNUM(23) JOB(QPADEV0009) JOBNUM(855068) USER(JDIEU) MAPNAM(MAIL_DOC) MAPSEQ(00010) DELSPL(N)
PAGSTR(1) PAGEND(10) STATE(READY) FROM('hotline@mappingsuite.onmicrosoft.com')
TO('jdieu@mappingsuite.onmicrosoft.com') SUBJECT('Mon sujet') NOTE('Ceci est mon corps d'email ayant pour donnée dynamique :[[DATE]]') NAME1('PJ.pdf')
Envoi d'un email avec un corps d'email HTML dynamique
Le principe de cette fonctionnalité est d'utiliser un fichier HTML pour le corps de l'email.
Voici un exemple d'un fichier HTML (mail.html) :
<body> <img src="http://www.mappingsuite.com/wp-content/uploads/2018/08/Logo_web1.png"> Cher Monsieur [[NOM]] ayant pour numéro de client [[NUMCLI]], Veuillez trouver ci-joint votre facture nº <font color=red> [[NUMFAC]] en date du [[DATE]] </font>. <b>Cordialement</b> </body>
Attention : Dans le fichier HTML, les caractères spéciaux doivent être écrits avec un codage particulier : https://www.commentcamarche.com/contents/489-caracteres-speciaux-html
Son appel se fait par l'écriture de son chemin et de son nom dans le paramètre NOTE de la commande MAPSNDMAIL :
MAPSNDMAIL SPLF(FACTURE) SPLNUM(23) JOB(QPADEV0009) JOBNUM(855068) USER(JDIEU) MAPNAM(MAIL_DOC) MAPSEQ(00010) DELSPL(N)
PAGSTR(1) PAGEND(10) STATE(READY) FROM('hotline@mappingsuite.onmicrosoft.com')
TO('jdieu@mappingsuite.onmicrosoft.com') SUBJECT('Mon sujet') NOTE('/home/mapsend/mail.html') NAME1('PJ.pdf')
Voici le résultat obtenu :
Cher Monsieur MICALETTI ayant pour numéro de client 9214,
Veuillez trouver ci-joint votre facture nº 1 en date du 23/11/2016 .
Cordialement