OPALE - 10.0 - Utilisation - Envoyer un mail avec un document PDF

MAPSNDMAIL

De MappingDoc
Révision datée du 29 mai 2019 à 09:29 par FuzzyBot (discussion | contributions) (Mise à jour pour être en accord avec la nouvelle version de la source de la page)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

Préambule

Avec la version "Opale", il est possible d'envoyer des emails avec un document PDF en pièce jointe avec un corps HTML personnalisé via la commande MAPSNDMAIL.

La commande MAPSNDMAIL prend en paramètre une maquette M-Designer (paramètre "Mapping format") . Celle-ci doit obligatoirement être générée en PDF. Elle doit contenir des zones de type INDEX utilisées comme données dynamiques dans le sujet, le nommage des pièces jointes ou dans le contenu du corps de l'email.

Généralités sur la commande MAPSNDMAIL

La commande MAPSNDMAIL sur AS/400 a plusieurs paramètres :

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                                                Emeteur 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

Gestion des menus

Le menu d'envoi d'e-mail s'appelle MAPSND. Pour y accéder, il faut entrer la commande :

GO MAPSND

MAPSND.jpg

1. Paramétrage du mail

Cet écran est disponible uniquement si vous disposez des droits SECOFR

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

2. Démarrage de la gestion de mail

Ce menu permet de démarrer le travail MAPSMTP du sous-système. 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. 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 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 :

LOGOMAPPING.jpg
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