PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV 2024 → piloter lotus notes depuis windev
piloter lotus notes depuis windev
Iniciado por julien D, jun., 16 2005 5:52 PM - 1 resposta
Publicado em junho, 16 2005 - 5:52 PM
Bonjour,

Est-il possible de piloter le logiciel de messagerie Lotus Notes depuis windev en passant par un objet OLE ou grace a autre chose ?
Publicado em agosto, 09 2005 - 6:28 PM
Salut,

Voici le code que j'utilise pour mes envois de mail via lotus

LOCAL
i est un entier // Variable de travail
WSTR est une chaîne // Variable de travail
Subject est une chaîne // Sujet du message
Attachment est une chaîne // Piéces jointes
Recipient est une chaîne // Destinataire
BodyText est une chaîne // Texte du corps du message
SaveIt est un booléen // Sauvegarde du message

Maildb est un objet OLE dynamique // Base notes
UserName est une chaîne // Nom de l'utilisateur courant de notes
MailDbName est une chaîne // Base notes de l'utilisateur courant
MailDoc est un objet OLE dynamique // Le message
AttachME est un objet OLE dynamique // Le document attaché
Sess est un objet OLE dynamique // La session notes
EmbedObj est un objet OLE dynamique // Objet d'attachement

//Initialisation
// Sujet du message
Subject = "Sujet"

// fichiers à attacher
Attachment = "d:\appli\test.txt"

// autre fichier à attacher
si autrefichier alors
Attachment = Attachment + ";" + "d:\appli\test1.txt"
FIN


// Destinataire
Recipient = "Prenom.nom@societe.fr"

// Texte du corps du message
BodyText = "corps du message"
SaveIt = True


NbLance est un entier = ExeLancé("NLNOTES.EXE")
SI NbLance < 1 ALORS
Erreur("lotus Notes n'est pas ouvert l'envoi du mail est impossible")
RETOUR
FIN

//Démarre une session notes
Sess = allouer un objet OLE "Notes.Notessession"


UserName = Sess>>UserName
MailDbName =Gauche(UserName, 1) + Droite(UserName, (Taille(UserName) - Position(UserName,
" "))) + ".nsf"
Maildb = Sess>>GETDATABASE("", MailDbName)
Maildb>>OPENMAIL

// Créer un nouveau message
MailDoc = Maildb>>CreateDocument

// Brouillon
SI INT_BROUILLON = 1 ALORS
MailDoc>>PutInFolder ("($Draft)")
MailDoc>>Save (OLEVrai, OLEVrai)
FIN

MailDoc>>Form = "Memo"

// Destinataires directs
MailDoc>>SendTo = Recipient

// Destinataires en copies
//maildoc>>CopyTo = recipient1

// Destinataires en copies cachées
//MailDoc>>BlindCopyTo = Recipient1

// Texte du sujet du message
MailDoc>>Subject = SansEspace(Subject)

// Indiquateur de délivrance du message
MailDoc>>DeliveryReport = "1"

// Texte du corps du message
MailDoc>>Body = SansEspace(BodyText)

// Retour message
MailDoc>>ReturnReceipt = "0" // pas de retour sinon "1" AR

// Sauvegarde du message
MailDoc>>SAVEMESSAGEONSEND = SaveIt

//Attache les fichiers joints
SI Attachment <> "" ALORS
i = Position(Attachment,";")
AttachME = MailDoc>>CREATERICHTEXTITEM("Attachment")
EmbedObj = AttachME>>EMBEDOBJECT(1454, "", Gauche(Attachment,i-1), "Attachment")
WSTR = Droite(Attachment,Taille(Attachment)-i)
EmbedObj = AttachME>>EMBEDOBJECT(1454, "", WSTR, "Attachment")
// attache le programme au message
IF CH_DOC <> "" ALORS
EmbedObj = AttachME>>EMBEDOBJECT(1454, "", doc, "Attachment")
END
MailDoc>>CREATERICHTEXTITEM ("Attachment")
FIN

// Date et heure du message
//MailDoc>>PostedDate = dateverschaine(datedujour()) + " " + Gauche(HeureVersChaîne(maintenant()),
5) //Gets the mail to appear in the sent items folder


SI INT_BROUILLON = 1 ALORS
// Brouillon
MailDoc>>PutInFolder ("($Draft)")
MailDoc>>Save (OLEVrai, OLEVrai)
SINON
//Envoie le message
MailDoc>>send (0, Recipient)
FIN

//Libére les variables
libérer Maildb
libérer MailDoc
libérer AttachME
libérer Sess
libérer EmbedObj

Bon développement