Bonjour les amis,
Dans Windev j'ouvre une session Outlook pour faire apparaître les "expéditeur", "objet"... dans un tableau. Ca marche au poil.
Ceci n'utilise pas de variable Email à proprement parler (pour les connaisseurs, Email.Sujet... est écrit en bleu dans Windev).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 IDSession est un entier = EmailOuvreSessionOutlook("Outlook") EmailLitEntêtePremier(IDSession) TANTQUE Email.EnDehors = Faux TableAjouteFils(TABLEH_Mails,Catégorie,Email.DateRéception,Email.ID,DateVersChaîne(Email.DateRéception,"Jjj JJ Mmm à HHhmm"),Email.Expéditeur,Email.Sujet) FIN
Pour affecter une variable Email je fais comme suit :
Et ensuite je récupère les infos par "MonMessage.Sujet" etc...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 MonMessage est un Email EmailLitPremier(IDSession,MonMessage)
Cela fonctionne aussi.
Par contre et c'est ce qui m'amène. Dans mon tableau j'ai stocké Email.ID dans une colonne (TABLEH_Mails.COL_IdMail) et je veux faire en sorte que lorsque je clique sur une ligne du tableau, le mail correspondant à Email.ID soit stocké dans une variable de type Email.
Cela fonctionne avec le code de "sélection d'une ligne du tableau" :
Seulement c'est très lent car il lit tous les mails bêtement... Je suis sûr qu'il faut utiliser la fonction "EmailCherchePremier" qui est plus rapide mais je n'y arrive pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 MonMessage est un Email EmailLitPremier(IDSession,MonMessage) TANTQUE MonMessage.ID<>TABLEH_Mails.COL_IdMail EmailLitSuivant(IDSession,MonMessage) FIN
(pour info j'ai testé : EmailCherchePremier(IDSession,MonMessage,emailMessageID,TABLEH_Mails.COL_IdMail) mais c'est débile car EmailCherchePremier renvoie un booléen... j'espérais qu'il me stocke le mail dans la variable MonMessage).
Si vous avez une idée...
Amicalement,
Eric.
Partager