|
FOROS PROFESIONALES WINDEV, WEBDEV y WINDEV Mobile |
| | | | | |
DRAG AND DROP D'UNE PIECE JOINTE SELECTIONNEE DANS OUTLOOK |
Iniciado por Julie, 15,nov. 2024 17:10 - 3 respuestas |
| |
| | | |
|
| |
Publicado el 15,noviembre 2024 - 17:10 |
Après beaucoup de recherches, je n'arrives ps a faire ce que je veux
Je souhaiterais glisser une pièce jointe d'un mail qui peux en contenir plusieurs dans un élément d'une fenêtre pour pouvoir enregistrer cette pièce jointe dans une arborescence.
J'arrive a faire un drag and drop avec le mail entier et également d'une pièce jointe si le mail n'en a qu'une seule.
Je ne sais pas comment savoir quelle pièce jointe est sélectionnée Si vous savez faire cela je suis preneuse.
Ci dessous mon code Seule la derniere partie pose pb (//glissé d'une pièce jointe d'un email outlook)
SI DnDDonnéeDisponible(CF_HDROP) = Vrai ALORS ***** SINON SI gbOutlookInstallé=Faux ALORS Info("Outlook n'est pas installé !") RETOUR FIN SI DnDDonnéeDisponible(CF_TEXT) = Vrai ALORS i est un entier MailItem est un objet automation dynamique POUR i = 1 _À_ gL_Outlook>>ActiveExplorer>>Selection>>Count MailItem = gL_Outlook>>ActiveExplorer>>Selection(i) sNomTemp est une chaîne=fRépertoireTemp()+SAI_NomDocument+".msg" MailItem>>SaveAs(sNomTemp) Document_glissé(sNomTemp) fSupprime(sNomTemp) FIN SINON i est un entier MailItem est un objet automation dynamique gL_Outlook>>ActiveExplorer>>Selection>>Count MailItem = gL_Outlook>>ActiveExplorer>>Selection(1) MailItem>>AttachmentSelection sNomTemp est une chaîne=ComplèteRep(fRépertoireTemp())+MailItem>>Attachments>>Item(1)>>FileName MailItem>>Attachments>>Item(1)>>SaveAsFile(sNomTemp) fSupprime(sNomTemp) FIN FIN |
| |
| |
| | | |
|
| | |
| |
Publicado el 18,noviembre 2024 - 14:08 |
Personne ne sait faire ça?
Julie a écrit :
Après beaucoup de recherches, je n'arrives ps a faire ce que je veux Je souhaiterais glisser une pièce jointe d'un mail qui peux en contenir plusieurs dans un élément d'une fenêtre pour pouvoir enregistrer cette pièce jointe dans une arborescence. J'arrive a faire un drag and drop avec le mail entier et également d'une pièce jointe si le mail n'en a qu'une seule. Je ne sais pas comment savoir quelle pièce jointe est sélectionnée Si vous savez faire cela je suis preneuse. Ci dessous mon code Seule la derniere partie pose pb (//glissé d'une pièce jointe d'un email outlook) SI DnDDonnéeDisponible(CF_HDROP) = Vrai ALORS ***** SINON SI gbOutlookInstallé=Faux ALORS Info("Outlook n'est pas installé !") RETOUR FIN SI DnDDonnéeDisponible(CF_TEXT) = Vrai ALORS i est un entier MailItem est un objet automation dynamique POUR i = 1 _À_ gL_Outlook>>ActiveExplorer>>Selection>>Count MailItem = gL_Outlook>>ActiveExplorer>>Selection(i) sNomTemp est une chaîne=fRépertoireTemp()+SAI_NomDocument+".msg" MailItem>>SaveAs(sNomTemp) Document_glissé(sNomTemp) fSupprime(sNomTemp) FIN SINON i est un entier MailItem est un objet automation dynamique gL_Outlook>>ActiveExplorer>>Selection>>Count MailItem = gL_Outlook>>ActiveExplorer>>Selection(1) MailItem>>AttachmentSelection sNomTemp est une chaîne=ComplèteRep(fRépertoireTemp())+MailItem>>Attachments>>Item(1)>>FileName MailItem>>Attachments>>Item(1)>>SaveAsFile(sNomTemp) fSupprime(sNomTemp) FIN FIN |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 197 mensajes |
|
Publicado el 18,noviembre 2024 - 16:36 |
Bonjour
voici notre procédure appelée lors du lacher en drag and drop dans une table qui fait le comportement souhaité dans le cas de pièces jointes droppés depuis Outlook :
Procedure Cherche_PJ(p est une Procedure)
nbPj est un entier obj est un objet automation dynamique MonOutlook est un objet OLE "Outlook.Application" sChaineCara est une chaîne = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_ 1234567890."
QUAND EXCEPTIONEXCEPTION DANS nbPj=MonOutlook>>ActiveExplorer>>AttachmentSelection>>Count FAIRE nbPj = 0 FIN SI nbPj> 0 ALORS obj = MonOutlook>>ActiveExplorer SINON QUAND EXCEPTIONEXCEPTION DANS nbPj=MonOutlook>>ActiveInspector>>AttachmentSelection>>Count FAIRE RENVOYER nbPj FIN SI nbPj=0 ALORS RENVOYER nbPj obj = MonOutlook>>ActiveInspector FIN
QUAND EXCEPTIONEXCEPTION DANS POUR i=1 À nbPj soit monfile = obj>>AttachmentSelection>>Item(i)>>FileName monfile = Format_Nom_Fichier(monfile) sNewsujet est une chaîne = "" POUR z=1 _À_ Taille(monfile) SI PAS Contient(sChaineCara,monfile[[z]]) ALORS sNewsujet+="" SINON sNewsujet+=monfile[[z]] FIN FIN monfile = fRépertoireTemp()+[fSep]+ sNewsujet obj>>AttachmentSelection>>Item(i)>>SaveAsFile(monfile) p(monfile) FIN FAIRE Erreur(ExceptionInfo(errComplet)) FIN
PROCEDURE INTERNE Format_Nom_Fichier(MonNom) MonNom = Remplace(MonNom,":","") MonNom = Remplace(MonNom,"<","") MonNom = Remplace(MonNom,">","") MonNom = Remplace(MonNom,"""","") MonNom = Remplace(MonNom,"/","") MonNom = Remplace(MonNom,"\","") MonNom = Remplace(MonNom,"|","") MonNom = Remplace(MonNom,"?","") MonNom = Remplace(MonNom,"*","") MonNom = Remplace(MonNom,TAB,"") RENVOYER MonNom FIN
RENVOYER nbPj |
| |
| |
| | | |
|
| | |
| |
Publicado el 20,noviembre 2024 - 09:01 |
Bonjour merci pour votre aide, mais ça ne fonctionne pas mieux pour moi. Peut être qu'en fonction des versions outlook, il y a des différences... nbPj est toujours égal a 0
Merci quand même |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|