DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Communication / Gestion des emails
  • Cas particuliers
  • Membres de la structure Email pris en compte
  • Application en arrière-plan : Spécificité à partir de Android 10
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Lance l'application native d'envoi d'emails du poste en cours :
  • Poste sous Windows (utilisation du client MAPI),
  • Appareil mobile : Android, iPhone, iPad, Universal Windows 10.
Le contenu et les destinataires de l'email sont initialisés à partir des informations renseignées dans la structure Email du WLangage.
Attention :
  • L'application d'envoi d'emails du poste en cours doit avoir été préalablement configurée avec un compte d'envoi d'emails (SMTP) valide.
  • Selon la configuration de l'application d'envoi d'emails, le répertoire courant peut être modifié.
WINDEV Remarques :
  • Cette fonction repose sur le client MAPI installé sur le poste ("Simple MAPI" est insuffisant). Si le client MAPI n'est pas trouvé, la fonction recherche le client par défaut parmi : Microsoft Outlook, Outlook Express, Eudora, IncrediMail, Netscape, Mozilla Thunderbird, Mozilla.
  • L'application et le client MAPI doivent être tous les deux en 32 bits ou en 64 bits. En effet, si client est une application 64 bits, il ne sera vu que par les applications compilées en 64 bits (et de même si client est une application 32 bits, il ne sera vu que par les applications compilées en 32 bits).
    Nouveauté SaaS
    La fonction EmailAppliRécupèreArchitecture permet de connaître le mode d'exécution du client email par défaut. Selon l'architecture du client MAPI, il est ainsi possible de lancer si nécessaire une application en 32 ou 64 bits pour exécuter ce client.
Exemple
// Envoi d'un message avec pièce jointe 
Email.Destinataire[1] = "destinataire@mail.com"
Email.NbDestinataire = 1
Email.Sujet = "Sujet du message"
Email.Message = "Texte du message"
// Photo.jpg est un fichier qui a été créé par l'application
Email.Attache[1] = SysRepStockageExterne(1, ssePublicDocument) + [fSep] + "photo.jpg"
Email.NbAttache = 1
EmailLanceAppli()
Nouveauté SaaS
WINDEV
nArchitecture est un entier = EmailAppliRécupèreArchitecture()
SI ErreurDétectée ALORS
	Erreur("Impossible de déterminer l'architecture du mailer par defaut.")
	RETOUR
FIN
<COMPILE SI Configuration32>
	SI nArchitecture = archi32 ALORS
		EmailLanceAppli()
	SINON
		// Lance un exécutable WINDEV 64 bits pour lancer le programme de messagerie
		LanceAppli(fRepExe() + [fSep()] + "LanceMailer_64.exe")
	FIN
	RETOUR
<FIN>
<COMPILE SI Configuration64>
	SI nArchitecture = archi64 ALORS
		EmailLanceAppli()
	SINON
		// Lance un exécutable WINDEV 64 bits pour lancer le programme de messagerie
		LanceAppli(fRepExe() + [fSep()] + "LanceMailer_64.exe")
	FIN
	RETOUR
<FIN>
Erreur("Impossible de déterminer l'architecture de l'application")
Syntaxe
EmailLanceAppli()
Remarques

Cas particuliers

  • Si aucune application d'envoi d'emails n'est trouvée sur le poste en cours, une erreur non fatale est déclenchée. Pour savoir si le lancement de l'application d'envoi d'emails a échoué, utilisez la variable ErreurDétectée.
  • AndroidWidget AndroidiPhone/iPadWidget IOSMac Catalyst La fonction EmailLanceAppli peut être utilisée dans l'émulateur. Elle ne peut pas être utilisée dans le simulateur.
  • AndroidWidget Android L'application d'envoi d'emails fournie par défaut dans les anciennes versions d'Android (<= 1.6) ne permet pas d'initialiser le message avec plus d'une seule pièce jointe. Dans ce cas, seule la première pièce jointe décrite dans le membre Email.Attache sera associée au message.
  • AndroidWidget Android En Android, si le message à envoyer comporte des pièces jointes, celles-ci doivent se trouver sur la mémoire partagée (exemple : la SDCard) afin d'être accessibles au client mail.
  • Pour réinitialiser la structure Email, utilisez la fonction EmailRAZ.
  • La fonction EmailLanceAppli n'est pas bloquante. Le code suivant l'appel de cette fonction continuera de s'exécuter dès que l'application d'envoi d'emails aura été lancée.
  • Il n'est pas possible de savoir si l'utilisateur a validé l'envoi de l'email.

Membres de la structure Email pris en compte

WINDEVAndroid Seuls les membres suivants de la structure Email seront pris en compte lors de l'initialisation du message à envoyer :
  • Email.Attache
  • Email.CC
  • Email.Cci
  • Email.Bcc
  • Email.Destinataire
  • Email.Message
  • Email.NbAttache
  • Email.NbCc
  • Email.NbCci 
  • Email.NbBcc
  • Email.NbDestinataire
  • Email.Sujet
Universal Windows 10 AppiPhone/iPadWidget IOSMac Catalyst Les membres pris en compte sont les suivants :
  • Email.Attache
  • Email.CC
  • Email.Bcc
  • Email.Destinataire
  • Email.Message
  • Email.Sujet
AndroidWidget Android

Application en arrière-plan : Spécificité à partir de Android 10

A partir de Android 10, il n'est plus possible d'ouvrir une fenêtre lorsque l'application est en arrière-plan.
La fonction EmailLanceAppli peut provoquer l'ouverture d'une fenêtre. Si cette fonction est utilisée alors que l'application est en arrière-plan, une erreur fatale sera générée.
Conseils :
  • Il est possible de savoir si l'application est en arrière-plan grâce à la fonction EnModeArrièrePlan.
  • Si une application a besoin d'interagir avec l'utilisateur alors qu'elle se trouve en arrière-plan, la solution consiste à afficher une notification (via le type Notification). Lors du clic sur la notification, l'application sera remise au premier plan si la propriété ActiveApplication est à Vrai. Il est également possible d'ouvrir une fenêtre depuis la procédure passée à la propriété ActionClic.
Liste des exemples associés :
WM Note de frais Exemples multiplateforme (WINDEV Mobile) : WM Note de frais
[ + ] Cet exemple permet de gérer vos notes de frais.

Voici les principales fonctionnalités de cette application :
- La saisie des factures
- Gestion des devises étrangères
- Ajout de justificatif photo pour les factures
- Envoi par mail de la note de frais
- Suivi des notes de frais
- ...
Composante : wd300com.dll
Version minimum requise
  • Version 16
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 09/07/2024

Signaler une erreur ou faire une suggestion | Aide en ligne locale