Envoyer un mail avec pièce jointe prédéfinie de façon automatisée

Envoyer un mail avec pièce jointe prédéfinie de façon automatisée - Programmation

Marsh Posté le 22-05-2002 à 14:13:54    

Salut à tous et merci de vous pencher sur ma question.
J'ai créé une BDD et j'aimerais faire en sorte que l'utilisateur puisse me l'envoyer par mail (via Outlook) sans avoir à faire trop d'opérations. J'avais pensé à créer une chtite page HTML avec une URL de type mailto:adresse@provider.com?subject=Sujet&attachm=c:\mes%20documents\bdd.mdb
 
Malheureusement, il parait que la commande mailto ne permet pas d'attacher de fichier...
 
On m'a dit que faire un champ et un bouton parcourir à côté serait une solution, mais pour mon utilisateur, j'aimerais que le mail comporte la pièce jointe en peu de clics et sans chercher le chemin du fichier.
Ce fichier sera toujours dans c:\mes documents
 
Merci pour votre aide

Reply

Marsh Posté le 22-05-2002 à 14:13:54   

Reply

Marsh Posté le 22-05-2002 à 14:16:22    

impossible comme tu veux le faire. Le user doit spécifier le fichier (ce qui au niveaua sécurité est logique)


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 22-05-2002 à 14:18:28    

DarkLord a écrit a écrit :

impossible comme tu veux le faire. Le user doit spécifier le fichier (ce qui au niveaua sécurité est logique)  




 
OK merci
 
Et la solution la plus simple à ton avis ?

Reply

Marsh Posté le 22-05-2002 à 14:23:57    

avec administration Web? y en a pas. Sion tu peux faire un petit soft local qui se connecte à un serveur pop et qui lui peut envoyer le fichier de manière automatique (genre tu spécifies quel pop et quel fichier la premiere fois puis les fois suivantes tu n'as qu'à le lancer ou appuyer sur un bouton pour que ca le fasse.


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 22-05-2002 à 14:26:47    

sous quoi est créé ta BDD ???

Reply

Marsh Posté le 22-05-2002 à 14:29:14    

jeanphi80 a écrit a écrit :

sous quoi est créé ta BDD ???  




 
C'est une BDD Access 2000 que l'utilisateur pourrai envoyer par mail en cas de défaillances.

Reply

Marsh Posté le 22-05-2002 à 14:33:57    

barthoose a écrit a écrit :

 
 
C'est une BDD Access 2000 que l'utilisateur pourrai envoyer par mail en cas de défaillances.  




 
Dans un programme que je fais, j'arrive a envoyer un mail depuis MS Access (avec le meme attachment chaque fois)! mais je fais ca via du code VB, lorsque l'utilisateur clique sur un bouton, et le mail est envoye via lotus notes...
je ne sais pas si ca peut t'aider?

Reply

Marsh Posté le 22-05-2002 à 14:36:52    

jeanphi80 a écrit a écrit :

 
 
Dans un programme que je fais, j'arrive a envoyer un mail depuis MS Access (avec le meme attachment chaque fois)! mais je fais ca via du code VB, lorsque l'utilisateur clique sur un bouton, et le mail est envoye via lotus notes...
je ne sais pas si ca peut t'aider?  




 
C'est exactement ce que je veux faire. Je ne pensais pas passer par Access pour l'envoi du mail, mais si c'est possible, je t'écoute attentivement !
 
Merci

Reply

Marsh Posté le 22-05-2002 à 14:44:38    

voila mon code pour cela, bonne chance:
 
       Dim notesdb As Object
       Dim notesdoc As Object
       Dim notesrtf As Object
       Dim notessession As Object
       Set notessession = CreateObject("Notes.Notessession" )
       Set notesdb = notessession.getdatabase("", "" )
       
       Call notesdb.openmail
       'make new mail message
       Set notesdoc = notesdb.createdocument
       Dim email As String
       email = Forms!main_form!email1
       Call notesdoc.replaceitemvalue ("Sendto", email)
       Dim subj As String
       subj = "Title of the mail"
       Call notesdoc.replaceitemvalue("Subject", subj)
       Set notesrtf = notesdoc.createrichtextitem("body" )
       Dim temp As String
       temp = "body of the mail"
       Call notesrtf.appendtext(temp)
       Call notesrtf.addnewline(2)
 
       'Call notesrtf.embedObject
       (1454, "", "c:\myfiles\Years.xls", "Mail.rtf" )
       
       'send message
       Call notesdoc.send(False)
       Set notessession = Nothing

Reply

Marsh Posté le 22-05-2002 à 15:15:29    

Merci !
Pourrais tu me détailler les première lignes stp ? Mon aide VB plante !
dans ton call notesrtf.embedObject, c quoi 1454, "", et "mail.rtf" ?
 
Merci beaucoup !

Reply

Marsh Posté le 22-05-2002 à 15:15:29   

Reply

Marsh Posté le 22-05-2002 à 15:23:45    

barthoose a écrit a écrit :

Merci !
Pourrais tu me détailler les première lignes stp ? Mon aide VB plante !
dans ton call notesrtf.embedObject, c quoi 1454, "", et "mail.rtf" ?
 
Merci beaucoup !  




 
 
Les premieres lignes servent a etablir la connexion avec Lotus Notes, donc toi, tu dois trouver les fonctions correspondantes pour Outlook!
 
le 1454 dans embedobject, c'est un code qui provient de je ne sais ou, et le mail.rtf sert a dire qu'on envoie un attachment de type rtf (meme si tu envoies un autre type de fichier, ca marche, donc, je ne me suis pas tracasse de savoir pourquoi).
 
Toutes ces fonctions ne sont pas dans l'aide de VB je pense, ce sont des fonctions propres a la liaison avec lotus notes.

Reply

Marsh Posté le 22-05-2002 à 15:37:05    

Et tu penses que pour Outlook c pareil ??
 
Sinon tu ne sais pas où trouver ces infos pour Outlook ?
 
En tout cas merci

Reply

Marsh Posté le 22-05-2002 à 15:41:00    

barthoose a écrit a écrit :

Et tu penses que pour Outlook c pareil ??
 
Sinon tu ne sais pas où trouver ces infos pour Outlook ?
 
En tout cas merci  




 
tu peux toujours aller voir sur ce site et faire une recherche:
http://www.mvps.org/accessfr/

Reply

Marsh Posté le 22-05-2002 à 15:47:02    

barthoose a écrit a écrit :

Et tu penses que pour Outlook c pareil ??
 
Sinon tu ne sais pas où trouver ces infos pour Outlook ?
 
En tout cas merci  




 
 
voila du code que je viens de trouver :
 
Sub SendMessage(DisplayMsg As Boolean, Optional AttachmentPath)
          Dim objOutlook As Outlook.Application
          Dim objOutlookMsg As Outlook.MailItem
          Dim objOutlookRecip As Outlook.Recipient
          Dim objOutlookAttach As Outlook.Attachment
 
          ' Create the Outlook session.
          Set objOutlook = CreateObject("Outlook.Application" )
 
          ' Create the message.
          Set objOutlookMsg  = objOutlook.CreateItem(olMailItem)
 
          With objOutlookMsg
              ' Add the To recipient(s) to the message.
              Set objOutlookRecip = .Recipients.Add("Nancy Davolio" )
              objOutlookRecip.Type = olTo
 
              ' Add the CC recipient(s) to the message.
              Set objOutlookRecip = .Recipients.Add("Michael Suyama" )
              objOutlookRecip.Type = olCC
 
             ' Add the BCC recipient(s) to the message.
              Set objOutlookRecip = .Recipients.Add("Andrew Fuller" )
              objOutlookRecip.Type = olBCC
 
             ' Set the Subject, Body, and Importance of the message.
             .Subject = "This is an Automation test with Microsoft Outlook"
             .Body = "This is the body of the message." &vbCrLf & vbCrLf
             .Importance = olImportanceHigh  'High importance
 
             ' Add attachments to the message.
             If Not IsMissing(AttachmentPath) Then
                 Set objOutlookAttach = .Attachments.Add(AttachmentPath)
             End If
 
             ' Resolve each Recipient's name.
             For Each ObjOutlookRecip In .Recipients
                 objOutlookRecip.Resolve
             Next
 
             ' Should we display the message before sending?
             If DisplayMsg Then
                 .Display
             Else
                 .Save
                 .Send
             End If
          End With
          Set objOutlook = Nothing
      End Sub

Reply

Marsh Posté le 22-05-2002 à 15:49:42    

MERCI !

Reply

Marsh Posté le 22-05-2002 à 17:14:10    

Est ce que tu connais un moyen pour donner comme chemin du fichier attaché le chemin de la base de données actuellement ouverte ?

Reply

Marsh Posté le 22-05-2002 à 19:22:32    

Avec K-Mail et du VBscript ça doit se faire... (cf mon site pour Kmail)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed