FONCTION bEnvoyerMessage1()
// Variables locales
i est un entier
bOK est un booléen
sMsg est une chaîne
bAuMoinsUnContact est un booléen = Faux
sSujet est une chaîne = MaFenêtre..Titre
sContenu est une chaîne = "Ci-joint, message du PC " + ESP +...
Fiche_Intervention_Renseignements_Intervention_Renseignements.nom_pc
// Envoi d'un mail
sSMTP est une chaîne=INILit("SMTP","SMTP","", fRepEnCours() +"\Mail.ini")
// Connexion à la messagerie si pas de session en cours
// Ouverture de la session
EmailOuvreSessionSMTP(gsUser,sSMTP);Multitâche(-10)
SI ErreurDétectée ALORS
Erreur("Impossible d'établir la connexion", ErreurInfo(errRésumé))
FIN
// Insérer votre traitement ici
// Remise à zéro de la structure du mail
EmailRAZ()
// On vérifie qu'il y a au moins un client sélectionné
POUR i=1 A TableOccurrence(Table_Contacts)
// si le client fait partie des destinataires
SI Table_Contacts.inter[i] ALORS
bAuMoinsUnContact = Vrai
FIN
FIN
SI bAuMoinsUnContact=Faux ALORS
Info("Aucun contact sélectionné")
FIN
// Mémorise le message-type
Email.Expéditeur = gsExpéditeur // L'expéditeur
Email.NbDestinataire = 1 // Le nombre de destinataires
Email.Sujet = sSujet // Le sujet
Email.Message = sContenu // Le corps du message
Email.Attache = fRepEnCours()+"\Mess.pdf"
Email.NbAttache = 1
// initialisation de la table
POUR i=1 A TableOccurrence(Table_Contacts)
Table_Contacts.Col_etat[i] = ""
FIN
// pour chaque ligne de la table
POUR i=1 A TableOccurrence(Table_Contacts)
// si le client fait partie des destinataires
SI Table_Contacts.inter[i] ALORS
TableSelectPlus(Table_Contacts,i)
Col_etat[i]="En cours" ; Multitâche(-10)
// Personnalisation du message
// Envoi du message
// Préparation du message
Email.Destinataire[1] = Table_Contacts.mail_contact[i] // Le destinataire
bOK=EmailEnvoieMessage(gsUser)
SI PAS bOK ALORS
SI PAS gbSessionOuverte ALORS
Col_etat[i]="Abandon"
SORTIR
SINON
Col_etat[i]="Echec"
FIN
SINON
Col_etat[i]="Envoyé" ; MultitâcheRepeint();Multitâche()
FIN
FIN
FIN
SI bOK ALORS
// ferme la fiche
Ferme(Fiche_Renseignements_Intervention)
FIN
ThreadMode(threadAuto)
ThreadExécute("envoi",threadUtiliseHyperFile,"bEnvoyerMessage1")
Cette contribution était de : http://old.wdforge.org/newbb/viewtopic.php?forum=17&topic_id=4344&post_id=17954