Newsgroup: it.comp.appl.access
Titolo: implemento modulo per invio mail con allegato

ciao ng, sto utilizzando questo modulo da voi consigliato per l'invio di una
mail con l'allegato, il problema che ho è che devo chiamare questo modulo da
diverse form, e come potrete ben capire, richiede il nome della form da cui
prendere i valori per To, cc, attach, etc, che mette nella variabile F
ho provato a creare una variabile global nomeform_chiamante e dal bottone
invia sulla mia form gli dico:
nomeform_chiamante=fomr1
e nel codice del modulo mettere:
set F=nomeform_chiamante
ma non funziona.
come posso fare?
grazie Nao
Public Function Mail()
    If GetDefMail$ = "" Or GetDefMail$ = "0" Then
        MsgBox "Non esiste un supporto MAPI per l'invio di posta elettronica"
        Exit Function
    End If
    Dim F As Form, Result
 
    Set F = Forms!frm_invio_report_a
    If IsNull(F!to) Or F!to = "" Then Exit Function
    If IsNull(F!subject) Then F!subject = ""
    If IsNull(F!cc) Then F!cc = ""
    If IsNull(F!attach) Then F!attach = "c:\rptnotifica.pdf"
    If IsNull(F!message) Then F!message = ""
    'Result = SendMail((F!Subject), (F!To), (F!CC), (F!Attach), (F!Message))
    Result = SendMail((F!subject), (F!to), (F!cc), (F!attach), (F!message))
    If Result <> SUCCESS_SUCCESS Then
        MsgBox "Errore nell'invio: " & Result, 16, "Mail"
    Else
        MsgBox "Operazione conclusa!", 64, "Mail"
    End If
End Function
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

"nao" <naon...@libero.itnospan> wrote in message
news:195Z33Z137Z29Y...@usenet.libero.it

Io Opterei per un bel Modulo di Classe con proprietà e metodi
poi vedi tu.
Nel tuo caso potresti fare così: 
Passa la Form come variabile Oggetto nella Function...!
Public Function Mail(F as Access.Form)
   If GetDefMail$ = "" Or GetDefMail$ = "0" Then
         MsgBox "Non esiste un supporto MAPI per l'invio di posta
elettronica"
         Exit Function
     End If
     Dim Result
 
     If IsNull(F!to) Or F!to = "" Then Exit Function
     If IsNull(F!subject) Then F!subject = ""
     If IsNull(F!cc) Then F!cc = ""
     If IsNull(F!attach) Then F!attach = "c:\rptnotifica.pdf"
     If IsNull(F!message) Then F!message = ""
     'Result = SendMail((F!Subject), (F!To), (F!CC), (F!Attach),
(F!Message))
     Result = SendMail((F!subject), (F!to), (F!cc), (F!attach),
(F!message))
     If Result <> SUCCESS_SUCCESS Then
         MsgBox "Errore nell'invio: " & Result, 16, "Mail"
     Else
         MsgBox "Operazione conclusa!", 64, "Mail"
     End If
End Function
La limitazione a cui andresti incontro è che in ogni Form
che usi questa chiamata devi perforza avere i controlli tutti
Nominati nel modo corretto.
Poi visto che usi la Funzione, fai in modo che restituisca un
valore di OK(Booleano) e devi gestire dalla Form il fatto che la mail 
sia stat inviata o meno, il MsgBox è relativo....!!!!!!
Ciao
@Alex
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 
[CUT]
Io opterei per un bel Modulo di Classe con proprietà e metodi
poi vedi tu.
Nel tuo caso potresti fare così: 
Passa la Form come variabile Oggetto nella Function...!
Public Function Mail(F as Access.Form)
   If GetDefMail$ = "" Or GetDefMail$ = "0" Then
         MsgBox "Non esiste un supporto MAPI per l'invio di posta
elettronica"
         Exit Function
     End If
     Dim Result
 
     If IsNull(F!to) Or F!to = "" Then Exit Function
     If IsNull(F!subject) Then F!subject = ""
     If IsNull(F!cc) Then F!cc = ""
     If IsNull(F!attach) Then F!attach = "c:\rptnotifica.pdf"
     If IsNull(F!message) Then F!message = ""
     'Result = SendMail((F!Subject), (F!To), (F!CC), (F!Attach),
(F!Message))
     Result = SendMail((F!subject), (F!to), (F!cc), (F!attach),
(F!message))
     If Result <> SUCCESS_SUCCESS Then
         MsgBox "Errore nell'invio: " & Result, 16, "Mail"
     Else
         MsgBox "Operazione conclusa!", 64, "Mail"
     End If
End Function


 Io Opterei per un bel Modulo di Classe con proprietà e metodi poi vedi tu.
io ho preso questo codice da internet come da voi consigliati nei
precendenti mess, dici che devo metterlo in un modulo di clesse?
scusa la mia ignoranza.
ciao Nao


 ha scritto:

Non capisco.........
Nao


 ciao Nao
Lascia perdere copia il nuovo modulo che ti ho scritto nel 
messaggio precedente e provalo come l'ho modificato io.
Non ti fare ingannare è stato modificato anche se di poco.....
Devi richiamarlo dalla from così;
Call Mail(Me)
Come ti dicevo l'importante è che in tutte le Form dal quale
lo chiami tu abbia nominato i Controlli allo stesso modo visto che
si basa proprio sul recupero dati dai controlli stessi.
