OPALE - 10.0 - Usage - E-mailing a PDF file
MAPSNDMAIL
Sommaire
- 1 Introduction
- 2 Generality on the MAPSNDMAIL command
- 3 Prior to V10.1
- 4 Generality on the MAPSNDMAIL command
- 5 What new from V10.1
- 6 Menus management
- 7 Mots-clés utilisés pour mapper automatiquement des données du fichier spool en entrée
- 8 Paramétrage
- 9 Contenu Texte ou HTML
- 10 Exemples
- 11 Troubleshooting
- 12 Voir aussi
Introduction
With 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 as a parameter ("Mapping format" parameter). The template has to be generated in PDF.
It has to include INDEX zones used as dynamic data in the subject, attachment name, or in the e-mail body.
Generality on the MAPSNDMAIL command
Prior to V10.1
The MAPSNDMAIL command on IBM i uses multiple parameters:
Spooled file . . . . . . . . . . Name Nom du spool
Spooled file number . . . . . . *LAST *LAST *ONLY 000000-999999 Numéro du spool Job Name . . . . . . . . . . . . *CURRENT Name, *CURRENT , *DEV Nom du job Job number . . . . . . . . . . . 000000-999999 Numéro du job User . . . . . . . . . . . . . . *CURRENT Name User Mapping format . . . . . . . . . Character value,10 max. Format M-Designer Sequence . . . . . . . . . . . . *ALL *MRG 00000-99999 Numéro de séquence du projet M-Designer Delete file . . . . . . . . . . N Y, N Suppression du spool d'origine ? Start page . . . . . . . . . . . 1 Integer, *SPL Numéro de page de début End page . . . . . . . . . . . . 999999 Integer, *SPL, *LAST Numéro de page de fin Original State . . . . . . . . . 'READY' HOLD, READY Statut de l'email ? PRIORITY . . . . . . . . . . . . '3' 1, 2, 3, 4, 5 Priorité d'envoi Send from . . . . . . . . . . . *USER Emetteur de l'email Send TO . . . . . . . . . . . . _______________________________________________ Destinaire(s) de l'email Send CC . . . . . . . . . . . . _______________________________________________ Copie(s) Send CCI . . . . . . . . . . . . _______________________________________________ Copie(s) cachée(s) Subject . . . . . . . . . . . . _______________________________________________ Sujet de l'email Note . . . . . . . . . . . . . . _______________________________________________ Corps de l'email Name of this file in the mail . 'Doc.pdf' Nom du PDF envoyé par email Path and name of the file . . . ________________________________________________ Chemin d'une éventuelle autre pièce jointe Name of this file in the mail . ________________________________________________ Nom d'une éventuelle autre pièce jointe Delete mail after send . . . . . 'N' Y, N, O Supprimer ou non l'email après son envoi Delete file1 after send . . . . 'N' Y, N, O Supprimer le 1er fichier joint Delete file2 after send . . . . 'N' Y, N, O Supprimer le 2ième fichier joint Autres paramètres Code Page . . . . . . . . . . . *SPL *SPL, 037,1147 Spécifier un code page
A partir de la V10.1
Depuis la version 10.1 de la suite OPALE, il est possible d'envoyer des emails en mode XPS en utilisant la conversion XPS to PDF. Pour cela, 2 nouveaux paramètres sont apparus :
Type de langage . . . . . . . . . . . ________ *XPS
Imprimante XPS / Language . . . ________ Nom, *PDF,
It is then possible to use a XPS format to send an email (the native PDF generation is no longuer needed)
Type de langage . . . . . . . . . . . *XPS
Imprimante XPS / Language . . . *PDF
Generality on the MAPSNDMAIL command
What new from V10.1
The 10.8.0 version bring new possibilites in regard to the emailing
SMTP settings screen of the emailing
Prior to V10.8.0, the SMTP setting was made with a variable system through the 'WRKENVVAR IBM-i command. Now, this setting is no longer made from the WRKENVVAR commande but directly from the MAPPING emailing setting screen.
The screen is available only if you have *SECOFR authority
SMTP server IP address Nom du serveur SMTP SMTP server port (25) Numéro du port de connexion SMTP server Login Nom d'utilisateur pour la connexion au server SMTP SMTP server Password Mot de passe pour la connexion au server SMTP SMTP Protocol Protocole SMTP (SSL, DTLS, TLS1, TLS1.1, TLS1.2) SMTP server domain Nom du domain du serveur SMTP Temp folder Répertoire temporaire (répertoire MAPSEND par défaut) Le dossier temporaire est le dossier où sont stockés les fichiers PDF envoyés par mail, les utilisateurs envoyant des mails doivent avoir les droits d'accès en lecture et écriture sur ce répertoire Data Queue processing ***détail à compléter*** par défaut : MAPSMTP La DTAQ par défaut est MAPSMTP (créée à l'installation), c'est elle qui permet au robot Mapping d'envoyer automatiquement les spools au serveur de mail. Cette DTAQ doit exister. Jobd for e-mailing ***détail à compléter*** par défaut : MAPDSMTP2 La JOBD par défaut est MAPDSMTP2 (créée à l'installation). Elle définit les propriétés des jobs d'envoi de mail par le robot. Cette JOBD doit exister. Message on success ***détail à compléter*** *USER Trois valeurs sont possibles : - *NONE. Par défaut, aucune commande n'est exécutée. - *USER. Par défaut, la commande SNDUSRMSG TOUSR(&USER) est exécutée. - *SYSOPR. Par défaut, la commande SNDUSRMSG TOUSR(*SYSOPR) est exécutée Message on error ***détail à compléter*** *USER Les réactions sur succès et sur erreur sont gérées dans le programme MAP_C031P9. Les sources de ce programme sont dans le fichier MAP_SPECIF de la bibliothèque d'installation. Trois valeurs sont possibles : - *NONE. Par défaut, aucune commande n'est exécutée. - *USER. Par défaut, la commande SNDUSRMSG TOUSR(&USER) est exécutée. - *SYSOPR. Par défaut, la commande SNDUSRMSG TOUSR(*SYSOPR) est exécutée SMTP debug level (SSL, DTLS, TLS1, TLS1.1, TLS1.2)
SMTP settings on the MAPSNDMAIL command
Since version 10.8.0, it is possible to override the SMTP server parameter values at the command level. The email sent will then use the information entered in the order and will ignore, for this sending only, the parameters entered in the general configuration screen.
The *DFT value refers to the setting of the general configuration screen. This value can be changed.
Other parameters
SMTP server name or address (*DFT) SMTP server name SMTP server port (*DFT) Connection port number SMTP login name (*DFT) SMTP login password (*DFT) login password SMTP protocol (*DFT) SMTP Prptocole SMTP domain name (*DFT) Domain Name
Menus management
The menu for sending e-mail is called MAPSND. To access it, enter the command:
GO MAPSND
1. Email settings
Before version 10.0
This screen is only available if you have SECOFR rights
SMTP server IP address Nom du serveur SMTP
SMTP server port (25) Numéro du port de connexion SMTP server domain Nom du domain du serveur SMTP Temporary folder Répertoire temporaire (répertoire MAPSEND par défaut) Le dossier temporaire est le dossier où sont stockés les fichiers PDF envoyés par mail, les utilisateurs envoyant des mails doivent avoir les droits d'accès en lecture et écriture sur ce répertoire Waiting Dtaq ***détail à compléter*** par défaut : MAPSMTP La DTAQ par défaut est MAPSMTP (créée à l'installation), c'est elle qui permet au robot Mapping d'envoyer automatiquement les spools au serveur de mail. Cette DTAQ doit exister. Sending jobd ***détail à compléter*** par défaut : MAPDSMTP2 La JOBD par défaut est MAPDSMTP2 (créée à l'installation). Elle définit les propriétés des jobs d'envoi de mail par le robot. Cette JOBD doit exister. Action if success ***détail à compléter*** *USER Trois valeurs sont possibles : - *NONE. Par défaut, aucune commande n'est exécutée. - *USER. Par défaut, la commande SNDUSRMSG TOUSR(&USER) est exécutée. - *SYSOPR. Par défaut, la commande SNDUSRMSG TOUSR(*SYSOPR) est exécutée Action if error ***détail à compléter*** *USER Les réactions sur succès et sur erreur sont gérées dans le programme MAP_C031P9. Les sources de ce programme sont dans le fichier MAP_SPECIF de la bibliothèque d'installation. Trois valeurs sont possibles : - *NONE. Par défaut, aucune commande n'est exécutée. - *USER. Par défaut, la commande SNDUSRMSG TOUSR(&USER) est exécutée. - *SYSOPR. Par défaut, la commande SNDUSRMSG TOUSR(*SYSOPR) est exécutée
From version 10.0
From version MAPPING OPALE 10.1, a Mode used to send parameter is available:
Mode used to send ____________ (*MAPPING, *IBM)
Ces deux valeurs possibles sont : *MAPPING et *IBM
*MAPPING permets d'avoir un comportement identique aux versions précédentes de MAPPING. En d'autres mots, MAPPING gère les envois des emails via le paramètrage SMTP stipulé en dessous de ce même écran de paramétrage.
*IBM permets de laisser la configuration SMTP de l'IBM-i(API IBM-i) prendre le relais pour les envois des emails. La configuration du server SMTP renseignée dans ce présent écran de configuration n'est alors pas utilisée.
2. Démarrage de la gestion de mail
Ce menu permet de démarrer le travail MAPSMTP du sous-système MAPSROBOT. Ce travail doit absolument être démarré pour l'envoi de mail via la commande MAPSNDMAIL. Ce menu appelle la commande STRMAPMAIL.
3. Arrêt du mail
Ce menu permet d'arrêter le travail MAPSMTP du sous-système MAPSROBOT. Ce menu appelle la commande ENDMAPMAIL.
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 IBM i 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 Designer avec une génération en langage PDF. Pour obtenir le contenu du fichier spool directement dans le corps de l'e-mail ou avoir l'adresse du destinataire et de l'émetteur pris dans le fichier spool, il existe plusieurs zones dans 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 les mettre dans le corps de l'e-mail envoyé
- mapSubject : Utilisé pour prendre des données du fichier spool et les 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 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 Designer |
---|---|
Send FROM (FROM) | *MAPFROM |
Send TO (TO) | *MAPSEND |
Send CC (CC) | *MAPCOPY |
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é.
Paramétrage de sécurité
⚠ Paramétrage présent à partir d'Opale v10.5.0
Le mode de connexion sécurisé est TLS v1.2 par défaut.
Cependant, il est possible de basculer vers d'autres modes moins fréquents ou moins sécurisés en renseignant une variable d'environnement EMAILPROTOCOL
.
Ce paramètre prend une valeur numérique entre 1 et 5. L'absence de ce paramètre entraine le choix du TLS v1.2 .
Valeur | Protocol |
---|---|
1 | SSL v3 |
2 | DTLS v1 |
3 | TLS v1.0 |
4 | TLS v1.1 |
5 (par défaut) | TLS v1.2 |
Contenu Texte ou HTML
Depuis la version 10.4.0 de MAPPING IBM-i, il est possible d'expliciter le type de contenu (Texte ou HTML) du corps des emails.
Contenu Texte
Il est possible d'expliciter en texte le type de contenu de l'email envoyé par la commande MAPSNDMAIL. Pour cela il faut préfixer le contenu du body par %%TXT%% ou %%FILE_TXT%%
%%TXT%% : Permet d'envoyer le body en mode texte (valeur par défaut)
Exemple : %%TXT%%Voici le corps de mon email en texte
%%FILE_TXT%% : Le contenu de l'email sera alors le contenu d'un fichier envoyé en mode texte
Exemple : %%FILE_TXT%%/home/monbody.txt (Fichier encodé en ANSI)
Contenu HTML
Il est possible d'expliciter en HTML le type de contenu de l'email envoyé par la commande MAPSNDMAIL. Pour cela il faut préfixer le contenu du body par %%HTML%% ou %%FILE_HTML%%
%%HTML%% : Permet d'envoyer le body en mode HTML
Exemple : %%HTML%%Voici le corps de mon email en html
%%FILE_HTML%% : Le contenu de l'email sera alors le contenu d'un fichier envoyé en mode HTML
Exemple : %%FILE_HTML%%/home/monbody.html (Fichier encodé en ANSI)
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('%%FILE_HTML%%/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
Troubleshooting
Pour la résolution d'erreurs liées à l'envoi de mail via la commande MAPSNDMAIL, veuillez consulter la page suivante :
Résolution d'erreurs d'envoi de mail
Voir aussi
Paramétrage de l'envoi de mail Mot clé : MAPSNDMAIL, Envoi email, envoi PDF par mail, Mail