Page 1 sur 2
Envoyer un mail en lotus script

Publié:
18 Août 2011 à 14:17
par MdmZ
Bonjour,
Je ne trouve pas la méthode en LS permettant d'envoyer un mail à une personne sans le document associé, et en mettant un message dans le mail.
De même sorte que la méthode @MailSend sans le lien vers le document.
Pouvez vous m'aider,
Merci,

Publié:
18 Août 2011 à 14:21
par Raziel
tu as la méthode send de la classe NotesDocument.

Publié:
18 Août 2011 à 14:27
par MdmZ
Oui mais avec cette méthode, lorsque je fais
Send(False), ca me génère une erreur lors de l'ouverture du message. De plus je n'arrive pas à mettre un corps au message.

Publié:
18 Août 2011 à 14:28
par Raziel
il faut que tu cré un champ subject et un champ body

Publié:
18 Août 2011 à 14:32
par MdmZ
en ouvrant le message, j'ai le message "cannot locate form "nomForm""

Publié:
18 Août 2011 à 14:34
par Raziel
comme tu fais un send du document sur lequel tu est, il faut que tu joigne le masque au mail envoyé.
Pour ce faire, il faut mettre ".send(true)"

Publié:
18 Août 2011 à 14:35
par MdmZ
je suis obligé de joindre ce masque ? Justement je ne veux pas qu'il y soit..

Publié:
18 Août 2011 à 14:36
par Raziel
tu est obligé sinon comment veux tu qu'il lise le doc. La boite mail du user ne contient pas le masque ayant servi à créer ton doc.
Sinon, au lieu d'envoyer le document, tu envoi un doc créé de toute pièce et qui contient un lien vers le document souhaité.

Publié:
18 Août 2011 à 14:53
par MdmZ
Je ne veux pas que l'utilisateur lise le doc. C'est juste un rappel pour dire qu'il faut qu'il en crée un nouveau..

Publié:
18 Août 2011 à 14:56
par Raziel
dans ce cas tu crée un doc de toute pièce avec un champ subject, un champ body et tu utilise la méthode send pour envoyer le mail

Publié:
18 Août 2011 à 15:13
par MdmZ
Mais il est impossible d'avoir un mail Normal ??
J'ai ca comme bout de code, avec un champ "body" dans la form "fessai".
Mais lorsque j'ouvre le mail je tombe directement sur la form "fessai" avec la valeur du champ "body". J'aimerai juste un mail normal avec comme contenu le "body"..
Set docB = New NotesDocument (db)
docB.form = "fessai"
docB.sendto = doc.Getitemvalue("SendTo")(0)
docB.subject = doc.Getitemvalue("Subject")(0)
docB.body = doc.Getitemvalue("Body")(0)
Call docB.Send(true)

Publié:
18 Août 2011 à 15:19
par Raziel
MdmZ a écrit:Mais il est impossible d'avoir un mail Normal ??
Ah bon ?
Là tu crée un doc dans ta base courante avec pour masque "fessai". Il faut que tu crée un doc (dans la mailbox par exemple) en mettant "Memo" comme nom de masque.
Ci dessous une fonction que j'utilise souvent pour l'envoi des mail
- Code : Tout sélectionner
Sub SendMail (Expediteur As String, Destinataires As Variant, Sujet As String, Corps As String)
Dim session As New notessession
Dim dbMailBox As notesdatabase
Dim docMail As NotesDocument
Dim body As NotesRichTextItem
If session.IsonServer Then
Set dbMailBox = session.getdatabase("", "mail.box", False)
Else
Set dbMailBox = session.getdatabase(session.currentdatabase.server, "mail.box", False)
End If
Set docMail = New notesdocument(dbMailBox)
Call docMail.replaceitemvalue("Form", "Memo")
Call docMail.replaceitemvalue("From", Expediteur)
Call docMail.replaceitemvalue("SendTo", Destinataires)
Call docMail.replaceitemvalue("Recipients", Destinataires)
Call docMail.replaceitemvalue("PostedDate", Now)
Call docMail.replaceitemvalue("Subject", Sujet)
Set body = New NotesRichTextItem (docMail, "Body")
Call body.AppendText(Corps)
Call docMail.Save(True, True, True)
End Sub

Publié:
18 Août 2011 à 15:35
par MdmZ
Avec ce bout de code, ca me génère plusieurs erreurs au moment de l'ouverture du message et en plus de cela le design de ma boite mail change completement tout d'un coup

Publié:
18 Août 2011 à 15:46
par Raziel
???
Le code ne fait qu'envoyer un mail...
Le message s'ouvre dans la boite mail du user et ne touche en rien à la structure de la boite mail.
Tu peux envoyer des screenshots ?

Publié:
18 Août 2011 à 15:46
par MdmZ
c'est bon j'ai réussi ! Merci beaucoup !