PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV 2024 → Envoi e-mail via lotus notes
Envoi e-mail via lotus notes
Started by Isolde Lardry, Mar., 09 2006 4:34 PM - 2 replies
Posted on March, 09 2006 - 4:34 PM
Quels sont les paramètrages nécessaires pour envoyer un mail sachant que la messagerie utilisée dans l'entreprise est LOTUS Notes
Posted on March, 09 2006 - 8:42 PM
L'envoie d'un message se fait via SMTP, quelle que soit la messagerie (cf. l'Aide en ligne et les exemples dans WinDev sur "Envoie de emails).

Bon dev.
Jean-Pierre
Posted on March, 10 2006 - 12:22 PM
*** Fenetre donnée en exemple dans windev************************
// Libellé objet obligatoire
SI SansEspace(SaisieObjet)="" ALORS
Erreur("Saissisez l'objet de votre mail.")
RepriseSaisie(SaisieObjet)
FIN

// initialisation de la table (test : en cours)
POUR i=1 A TableOccurrence(TableClient)
TableClient.ColEtat[i] = ""
FIN

// Controle si au moins un client sélectionné
nNombreFichier=0
POUR i=1 A TableOccurrence(TableClient)
// si le client fait partie des destinataires
SI TableClient.ColInter[i] ALORS
nNombreFichier++
FIN
FIN

SI nNombreFichier= 0 ALORS
Erreur("Sélectionnez au moins un client pour vos envois de mails")
RepriseSaisie(TableClient)
FIN
// pour chaque ligne de la table
POUR i=1 A TableOccurrence(TableClient)
// si le client fait partie des destinataires
SI TableClient.ColInter[i] ALORS
TableSelectPlus(TableClient,i)
ColEtat[i]="En cours"
Message("Envoi du mail à "+ColMail[i]) ; MultitâcheRepeint()
cpeDestinataire=ColMail
cpeSujet=SansEspace(SaisieObjet)
cpeAttachedFile=SaisiePJ
cPeTexte=SaisieTexte
NetEmailLotusNotes(cpeDestinataire,cpeSujet,cPeTexte,cpeAttachedFile)
FIN
FIN

Sablier(Faux)
Message()

********************************************************************
Procedure NetEmailLotusNotes
*********************************************************************

//NetEmailLotusNotes (<peDestinataire>, <peSujet>, <peTexte>, <peAttachedFile>)
//
// Paramètres :
// peDestinataire : <indiquez ici le rôle de peDestinataire>
// peSujet : <indiquez ici le rôle de peSujet>
// peTexte : <indiquez ici le rôle de peTexte>
// peAttachedFile : <indiquez ici le rôle de peAttachedFile>
// Valeur de retour :
// Aucune



PROCEDURE NetEmailLotusNotes(peDestinataire,peSujet,peTexte,peAttachedFile)

// DECLARATION DE L'OBJET OLE NotesSession

Notes est un objet OLE "Notes.NotesSession"

// DECLARATION DES OBJETS OLE DYNAMIQUES
Base est un objet OLE dynamique // OBJET BASE DE MAIL
Doc est un objet OLE dynamique // OBJET DOCUMENT
Contenu est un objet OLE dynamique // OBJET CONTENU DU DOCUMENT
Fichier1 est un objet OLE dynamique // OBJET PIECE JOINTE
Fichier2 est un objet OLE dynamique // OBJET PIECE JOINTE
Fichier3 est un objet OLE dynamique // OBJET PIECE JOINTE
Fichier4 est un objet OLE dynamique // OBJET PIECE JOINTE
Fichier5 est un objet OLE dynamique // OBJET PIECE JOINTE
Fichier6 est un objet OLE dynamique // OBJET PIECE JOINTE
Fichier7 est un objet OLE dynamique // OBJET PIECE JOINTE
Fichier8 est un objet OLE dynamique // OBJET PIECE JOINTE
Fichier9 est un objet OLE dynamique // OBJET PIECE JOINTE
//----------------------------------------------------------
cFichier1=""
cFichier2=""
cFichier3=""
cFichier4=""
cFichier5=""
cFichier6=""
cFichier7=""
cFichier8=""
cFichier9=""
//----------------------------------------------------------
// Construction des pièces jointes Maximum 9

nMaPosition est un entier = PositionOccurrence(cpeAttachedFile,";", rangPremier)
nPosition est un entier

TANTQUE nMaPosition <>0
SI SansEspace(cFichier1)="" ALORS
cFichier1=Replace(Gauche(cpeAttachedFile,nMaPosition),";","")
nPosition=nMaPosition
FIN
SI SansEspace(cFichier2)="" ALORS
cFichier2=Replace(Milieu(cpeAttachedFile,nPosition,(nMaPosition-nPosition)),";","")
nPosition=nMaPosition
FIN
SI SansEspace(cFichier3)="" ALORS
cFichier3=Replace(Milieu(cpeAttachedFile,nPosition,(nMaPosition-nPosition)),";","")
nPosition=nMaPosition
FIN
SI SansEspace(cFichier4)="" ALORS
cFichier4=Replace(Milieu(cpeAttachedFile,nPosition,(nMaPosition-nPosition)),";","")
nPosition=nMaPosition
FIN
SI SansEspace(cFichier5)="" ALORS
cFichier5=Replace(Milieu(cpeAttachedFile,nPosition,(nMaPosition-nPosition)),";","")
nPosition=nMaPosition
FIN
SI SansEspace(cFichier6)="" ALORS
cFichier6=Replace(Milieu(cpeAttachedFile,nPosition,(nMaPosition-nPosition)),";","")
nPosition=nMaPosition
FIN
SI SansEspace(cFichier7)="" ALORS
cFichier7=Replace(Milieu(cpeAttachedFile,nPosition,(nMaPosition-nPosition)),";","")
nPosition=nMaPosition
FIN
SI SansEspace(cFichier8)="" ALORS
cFichier8=Replace(Milieu(cpeAttachedFile,nPosition,(nMaPosition-nPosition)),";","")
nPosition=nMaPosition
FIN
SI SansEspace(cFichier9)="" ALORS
cFichier9=Replace(Milieu(cpeAttachedFile,nPosition,(nMaPosition-nPosition)),";","")
nPosition=nMaPosition
FIN
nMaPosition = PositionOccurrence(cpeAttachedFile,";", rangSuivant)
FIN

//----------------------------------------------------------
// OUVERTURE DE LA BASE DE MAIL PAR DEFAUT
Base = Notes>>GetDataBase("","")
Base>>OpenMail()
// CREATION D'UN NOUVEAU DOCUMENT
Doc = Base>>CreateDocument
// DECLARATION D'UN DOCUMENT DE TYPE MEMO
Doc>>ReplaceItemValue("Form","Memo")
// DESTINATAIRE
Doc>>ReplaceItemValue("SendTo",peDestinataire)
// SUJET
Doc>>ReplaceItemValue("Subject",peSujet)
// TEXTE DU MESSAGE
Doc>>ReplaceItemValue("Body",peTexte+RC+RC+"")
// CREATION DE L'OBJET CONTENU DU MESSAGE
Contenu = Doc>>CreateRichTextItem("Contenu")
// CREATION DES OBJETS PIECE-JOINTE RELIE
Fichier1 = Contenu>>EmbedObject(1454,"",cFichier1)
Fichier2 = Contenu>>EmbedObject(1454,"",cFichier2)
Fichier3 = Contenu>>EmbedObject(1454,"",cFichier3)
Fichier4 = Contenu>>EmbedObject(1454,"",cFichier4)
Fichier5 = Contenu>>EmbedObject(1454,"",cFichier5)
Fichier6 = Contenu>>EmbedObject(1454,"",cFichier6)
Fichier7 = Contenu>>EmbedObject(1454,"",cFichier7)
Fichier8 = Contenu>>EmbedObject(1454,"",cFichier8)
Fichier9 = Contenu>>EmbedObject(1454,"",cFichier9)

// SAUVEGARDE DU MESSAGE LORS DE L'ENVOI
Doc>>SaveMessageOnSend=OLETrue
// SAUVEGARDE DE LA DATE D'ENVOI DU MESSGAE
Doc>>ReplaceItemValue("PostedDate",Gauche(DateVersChaîne(DateSys()),6)+Droite(DateVersChaîne(DateSys()),2)+" "+...
Gauche(HeureVersChaîne(HeureSys()), 5))
// ENVOI DU DOCUMENT
Doc>>Send(OLEFaux)

// LIBERATION DES OBJETS OLE DYNAMIQUES
libérer(Fichier1)
libérer(Fichier2)
libérer(Fichier3)
libérer(Fichier4)
libérer(Fichier5)
libérer(Fichier6)
libérer(Fichier7)
libérer(Fichier8)
libérer(Fichier9)

libérer(Contenu)
libérer(Base)
libérer(Doc)

Info("message(s) envoyé(s).")

************************************************************



bon courage