Accueil > > > ENVOYER UN MAIL AVEC LOTUS NOTES 7 AVEC MULTI-DIFFUSION, CONTENU MESSAGE (BODY) MULTI-LIGNES, MOT DE PASSE LOTUS, PIÈCE JOINTE
ENVOYER UN MAIL AVEC LOTUS NOTES 7 AVEC MULTI-DIFFUSION, CONTENU MESSAGE (BODY) MULTI-LIGNES, MOT DE PASSE LOTUS, PIÈCE JOINTE
Information sur la source
Description
Bonjour, J'utilise un envoi de mail via Lotus de manière automatisée depuis Excel (VBA mais ça marche en VB). J'ai crée un exe qui est lancé par le Gestionnaire des taches. Il ouvre Excel, effectue un certain nombre d'opérations et envoie un mail à un certain nombre de personnes. Jusqu'à hier, j'avais un code qui fonctionnait parfaitement avec la version Lotus 6 installé sur mon poste. Nous commençons à migrer des postes vers Lotus 7 et les destinataires ayant cette version avaient des messages d'erreur lors de l'ouverture de leurs mails (dans les 2 sens cad v6 vers v7 ou v7 vers v6, j'avais des problèmes). C'est en cherchant sur ce site (http://www.vbfrance.com/codes/ENVOYER-MAIL-AVEC-L OTUS-NOTES-AVEC-PASSWORD_36653.aspx) publié par EvilGhost que j'ai essayé le code qu'il propose. Cela semble bien fonctionner avec Lotus Notes 7. Pour mes besoins, j'ai complété ce code car il est évident que chacun à des besoins spécifiques. - Pouvoir avoir plusieurs lignes de texte dans le corps (body) du message - Multi-diffusion du message. Par contre je n'ai pas trouvé le code qui permet d'avoir un accusé Réception. Si quelqu'un trouve, je suis preneur.
Source
- '//En VB , ajouter la référence ("Projet > References"): LOTUS DOMINO OBJECTS (qui correspond à domobj.tbl)
- ' // En VBA,ajouter la référence ("Outils > References"): LOTUS DOMINO OBJECTS (qui correspond à domobj.tbl)
- Sub EnvoiMail()
- Dim Email(6) As String
- Email(1) = "erenaud@compagnie-deutsch.com"
- Email(2) = "erenaud@wanadoo.fr"
- Email(3) = "contact@erenaud.fr"
- Email(4) = "dupont27@fr.fm"
- Email(5) = "duvert27@fr.fm"
- Email(6) = "durand27@laposte.net
- For i = 1 To 6
- Envoi = EnvoiNotesMail("Envoi mail Lotus V7", "C:\Excel\Postes commandes bloquées", Email(i), SaveIt:=True)
- Next i
- End Sub
-
- Function EnvoiNotesMail(Subject As String, Attachment As String, Recipient As String, SaveIt As Boolean) As Boolean
- '*********************************************
- 'Repris et développé par EvilGost et complété par Eren
- 'Subject: Sujet du mail
- 'Attachment: Chemin complet du fichier à attacher (ex: "C:\test.txt"),
- 'sinon, mettre "" /
- 'Recipient: Destinataire (ex: "erenaud@wanadoo.fr")
- 'SaveIt: sauvegarde du mail dans les courriers envoyés
- '*************************************************************************************************************
- 'Set up the objects required for Automation into Lotus Notes
- Dim Maildb As NotesDatabase 'The mail database
- Dim UserName As String 'The current users notes name
- Dim MailDoc As Object 'The mail document itself
- Dim AttachME As Object 'The attachment richtextfile object
- Dim oSession As NotesSession
- Dim dbDirectory As NotesDbDirectory
- Dim EmbedObj As Object 'The embedded object (Attachment)
-
- Dim objNotesField As Object ' Déclaration de la variable concernant le corps du message
-
- On Error GoTo ErrHandle
-
- Set oSession = New NotesSession
- 'Démarre une session de notes
-
- ' La ligne suivante ne marche qu'avec les versions 5.x et 6.x ,
- ' c'est l'injection du mot de passe
-
- oSession.Initialize ("PASSWORD")
-
- 'Récupère le nom par défaut de la session
- UserName = oSession.UserName
-
- 'Ouvre la base mail en utilisant le serveur par défaut
- Set dbDirectory = oSession.GetDbDirectory("EVREUX01/DEUTSCH") 'vous pouvez mettre l'adresse du serveur dans ces parentheses
- Set Maildb = dbDirectory.OpenMailDatabase
-
- 'Création du formulaire d'envoi de mail
- Set MailDoc = Maildb.CreateDocument()
-
- MailDoc.AppendItemValue "Subject", Subject ' remplissage du Sujet
- MailDoc.AppendItemValue "SendTo", Recipient ' adresse du destinataire Email(i)
- MailDoc.AppendItemValue "ReturnReceipt", "1" ' pour avoir un accusé réception (qu'avec des clients Lotus, Orange)
-
- ' Construction du corps du message
- Set objNotesField = MailDoc.CreateRichTextItem("Body")
-
- With objNotesField
- .AppendText "Bonjour,"
- .AddNewLine 2
- .AppendText "Ci-joint la situation des postes bloqués."
- .AddNewLine 2
- .AppendText "Vous trouverez dans le fichier joint."
- .AddNewLine 2
- .AppendText "********************************************"
- .AddNewLine 2
- .AppendText "Cet e-mail a été généré par un processus automatique."
- .AddNewLine 2
- .AppendText "Cordialement"
- .AddNewLine 1
- .AppendText "Eric RENAUD"
- .AddNewLine 1
- .AppendText "Gestion Intégrée et Données"
- .AddNewLine 3
- End With
-
- 'Permet d'attacher un document au mail
- If Attachment <> "" Then
- Set AttachME = MailDoc.CreateRichTextItem("Attachment")
- Set EmbedObj = AttachME.EmbedObject(1454, "", Attachment, "Attachment")
- End If
-
- 'Envoi du document
-
- If SaveIt = True Then
- MailDoc.SaveMessageOnSend = SaveIt 'si à True, Lotus sauvegarde le mail envoyé
- End If
-
- Call MailDoc.Send(False) 'j'obtiens une erreur lorsque je mets True au lieu de false, si quelqu'un sait pourquoi
-
- prvSendNotesMail = True
- GoTo ExitHandle
-
- ErrHandle:
- MsgBox Err.Description
- prvSendNotesMail = False
-
- ExitHandle:
- 'Vidage mémoire
- Set Maildb = Nothing
- Set MailDoc = Nothing
- Set AttachME = Nothing
- Set oSession = Nothing
- Set dbDirectory = Nothing
- Set EmbedObj = Nothing
- End Function
'//En VB , ajouter la référence ("Projet > References"): LOTUS DOMINO OBJECTS (qui correspond à domobj.tbl)
' // En VBA,ajouter la référence ("Outils > References"): LOTUS DOMINO OBJECTS (qui correspond à domobj.tbl)
Sub EnvoiMail()
Dim Email(6) As String
Email(1) = "erenaud@compagnie-deutsch.com"
Email(2) = "erenaud@wanadoo.fr"
Email(3) = "contact@erenaud.fr"
Email(4) = "dupont27@fr.fm"
Email(5) = "duvert27@fr.fm"
Email(6) = "durand27@laposte.net
For i = 1 To 6
Envoi = EnvoiNotesMail("Envoi mail Lotus V7", "C:\Excel\Postes commandes bloquées", Email(i), SaveIt:=True)
Next i
End Sub
Function EnvoiNotesMail(Subject As String, Attachment As String, Recipient As String, SaveIt As Boolean) As Boolean
'*********************************************
'Repris et développé par EvilGost et complété par Eren
'Subject: Sujet du mail
'Attachment: Chemin complet du fichier à attacher (ex: "C:\test.txt"),
'sinon, mettre "" /
'Recipient: Destinataire (ex: "erenaud@wanadoo.fr")
'SaveIt: sauvegarde du mail dans les courriers envoyés
'*************************************************************************************************************
'Set up the objects required for Automation into Lotus Notes
Dim Maildb As NotesDatabase 'The mail database
Dim UserName As String 'The current users notes name
Dim MailDoc As Object 'The mail document itself
Dim AttachME As Object 'The attachment richtextfile object
Dim oSession As NotesSession
Dim dbDirectory As NotesDbDirectory
Dim EmbedObj As Object 'The embedded object (Attachment)
Dim objNotesField As Object ' Déclaration de la variable concernant le corps du message
On Error GoTo ErrHandle
Set oSession = New NotesSession
'Démarre une session de notes
' La ligne suivante ne marche qu'avec les versions 5.x et 6.x ,
' c'est l'injection du mot de passe
oSession.Initialize ("PASSWORD")
'Récupère le nom par défaut de la session
UserName = oSession.UserName
'Ouvre la base mail en utilisant le serveur par défaut
Set dbDirectory = oSession.GetDbDirectory("EVREUX01/DEUTSCH") 'vous pouvez mettre l'adresse du serveur dans ces parentheses
Set Maildb = dbDirectory.OpenMailDatabase
'Création du formulaire d'envoi de mail
Set MailDoc = Maildb.CreateDocument()
MailDoc.AppendItemValue "Subject", Subject ' remplissage du Sujet
MailDoc.AppendItemValue "SendTo", Recipient ' adresse du destinataire Email(i)
MailDoc.AppendItemValue "ReturnReceipt", "1" ' pour avoir un accusé réception (qu'avec des clients Lotus, Orange)
' Construction du corps du message
Set objNotesField = MailDoc.CreateRichTextItem("Body")
With objNotesField
.AppendText "Bonjour,"
.AddNewLine 2
.AppendText "Ci-joint la situation des postes bloqués."
.AddNewLine 2
.AppendText "Vous trouverez dans le fichier joint."
.AddNewLine 2
.AppendText "********************************************"
.AddNewLine 2
.AppendText "Cet e-mail a été généré par un processus automatique."
.AddNewLine 2
.AppendText "Cordialement"
.AddNewLine 1
.AppendText "Eric RENAUD"
.AddNewLine 1
.AppendText "Gestion Intégrée et Données"
.AddNewLine 3
End With
'Permet d'attacher un document au mail
If Attachment <> "" Then
Set AttachME = MailDoc.CreateRichTextItem("Attachment")
Set EmbedObj = AttachME.EmbedObject(1454, "", Attachment, "Attachment")
End If
'Envoi du document
If SaveIt = True Then
MailDoc.SaveMessageOnSend = SaveIt 'si à True, Lotus sauvegarde le mail envoyé
End If
Call MailDoc.Send(False) 'j'obtiens une erreur lorsque je mets True au lieu de false, si quelqu'un sait pourquoi
prvSendNotesMail = True
GoTo ExitHandle
ErrHandle:
MsgBox Err.Description
prvSendNotesMail = False
ExitHandle:
'Vidage mémoire
Set Maildb = Nothing
Set MailDoc = Nothing
Set AttachME = Nothing
Set oSession = Nothing
Set dbDirectory = Nothing
Set EmbedObj = Nothing
End Function
Historique
- 06 février 2008 22:18:14 :
- Adresse mail erronée pour Email(6)
- 15 octobre 2008 15:37:40 :
- Ajout de :
MailDoc.AppendItemValue "ReturnReceipt", "1"
qui permet avec certaines messageries d'avoir un accusé réception (avec des clients Lotus, Orange)
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
envoi de mail à partir d'Access97 par Lotus Notes [ par rouby ]
Bonjour à tous,Je travaille pour un client qui a toute sa Messagerie sur Lotus Notes. Je veux pouvoir envoyer un mail contenant un fichier attaché cho
Lotus Script [ par Derrick soft ]
Bonjour,Je voulais savoir si certains programmeur serait intéressé par une rubrique LotusScript et formula Notes.Le LotusScript est voisin du VBA sauf
URGENT: COMPATIBILITÉ EXCEL ET LOTUS NOTES [ par peeweek ]
Je recherche quelqu'un qui pourrait me guider pour l'automatisation d'envois d'e-mails avec lotus notes lors de l'exécution d'une macro Excel. Si qqn
Mail -> Lotus Notes [ par laurent ]
Salut.Est ce que quelqu'un sait si il est possible , à partir d'un pc sans messagerie , d'envoyer un mail vers une boite aux lettres d'un serveur Note
Récupérer un message depuis Lotus Notes [ par DavidT ]
Je voudrai savoir si il est possible de récupérer un eMail et sa pièce jointe par VB par l'intermédaire d'un client Lotus Notes ?
Ouvrir une session lotus via VB [ par Downey ]
Bonjour tout le monde,Dans le cadre de mon stage je dois recuperer des mails sur une boite lotus notes. Le script qui fait le boulot marche en Lotus s
Nouvelle liste de diffusion VB - Lotus Notes [ par Derrick soft ]
Bonjour,Suite à plusieurs messages que j'ai reçu, je viens de créer une liste de diffusion sur le développement Lotus Notes.Cette liste s'oriente sur
lotus notes accuse de reception [ par galldup ]
Salut!J'ai reussi jusqu'a present d'envoyer un mail avec fichier joint via lotus notes sous VBA-access.tout marche bien.Maintenant, j'aimerai savoir q
liste de diffucion dans Lotus notes via VB [ par jeepyfr ]
Je recherche la syntaxe afin de mettre plusieurs destinataires dans le sendto pour envoyer un mail dans Lotus Notes via VB6.m_doc.AppendItemValue "Sen
Vba Excel Lotus notes [ par tahbre ]
Bonjour à tous, J'ai un fichier excel qui me génère des résultats d'activité, et je voudrais envoyer le fichier automatiquement à une liste de mails
|
Derniers Blogs
[SHAREPOINT] NOUVELLE PRéSENTATION POUR LA DOCUMENTATION SHAREPOINT SUR TECHNET.[SHAREPOINT] NOUVELLE PRéSENTATION POUR LA DOCUMENTATION SHAREPOINT SUR TECHNET. par Patrick Guimonet
Vous l'avez peut-être déjà remarqué ? La documentation SharePoint a subit un cure de "relooking" et prend un style inspiré de Metro, donc plus sobre, plus pur, plus clair ! C'est sur fond blanc et ca ressemble à ça : Globaleme...
Cliquez pour lire la suite de l'article par Patrick Guimonet ASYNC/AWAIT: COMPRENDRE COMMENT CA MARCHEASYNC/AWAIT: COMPRENDRE COMMENT CA MARCHE par fathi
Tout le monde est unanime pour dire que la programmation multi-thread et asynchrone est en train de devenir un sujet incontournable. Beaucoup de choses sont arrivées avec le framework 4 pour le code parallèle (TPL, PLinq,.) et bientôt, on va avoir l...
Cliquez pour lire la suite de l'article par fathi PAS D'INTELLITRACE SUR MON SITE WEB DANS IIS !PAS D'INTELLITRACE SUR MON SITE WEB DANS IIS ! par Etienne Margraff
J'ai récemment eu un problème pour obtenir l'intelliTrace sur un site web dans IIS. Il n'y avait pas de message d'erreur, rien dans le journal d'évènement Windows, et après 3 appels à une voyante, 2 visites chez un marabou, j'ai failli me résign...
Cliquez pour lire la suite de l'article par Etienne Margraff OFFICE 365 - SHAREPOINT ONLINE, QUELQUES LIMITATIONSOFFICE 365 - SHAREPOINT ONLINE, QUELQUES LIMITATIONS par junarnoalg
De nombreuses entreprises font le choix de SharePoint Online, service fourni au travers de l'offre de Microsoft Office 365. S'il est vrai que ce choix apporte un grand nombre d'avantages; rapidité de mise en œuvre, disponibilité, large couvertu...
Cliquez pour lire la suite de l'article par junarnoalg PRéSENTATION DES API REST DE WINDOWS AZURE : LISTER LES COMPTES DE STORAGEPRéSENTATION DES API REST DE WINDOWS AZURE : LISTER LES COMPTES DE STORAGE par richardc
http://www.c2idotnet.com/articles/presentation-des-api-rest-de-windows-azure-lister-les-comptes-de-storage
Désolé pour "toto", mais c2i existait avant blogs.developpeur.org et c'est mon site "officiel" ;-) ...
Cliquez pour lire la suite de l'article par richardc
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|