Newsgroup: it.comp.appl.access
Titolo: sendobjects per più mail

ciao a tutti,
ho riscontrato che utilizzando il metodo sendobject per realizzare
un'automazione di invio mail con allegato, l'istruzione in questione non
vien terminata finchè non si invia realmente la mail dal task di outlook
(nel mio caso).
è possibile produrre più task (mail) contemporaneamente e quindi deciderne
l'invio solo al termine dell'esecuzione della routine?
ciao e grazie
carmelo
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it


Probabilmente separando i destinatari da un punto e virgola e usandoli tutti 
insieme:
TuoA...@libero.it
;
TuoN...@libero.it
;
TuoPre...@libero.it
;ecc.
Per il Metodo SendObject vedi la guida ma non potrai inviare allegati 
diversi dagli oggetti del db.
Per inviare allegati diversi dagli oggetti di database puoi leggerti 
innumerevoli post su questo NG, consultare 
www.sitocomune.com
 o
www.donkarl.com/it
 o 
http://www.mantuanet.it/alessandro.baraldi/
Ciao, Carlo 

 Ciao, Carlo
probabilmente non ho espresso chiaramente la mia domanda:
con un solo comando richiamo piů volte il SendObject per realizzare
diversi invii  (allegati diversi) a differenti destinatari. il punto č che
il generico task di mail non si apre se prima non ho inviato la mail
precedente, cioč il codice resta in esecuzione sul docmd.SendObject che in
quel momento genera la mail.
pensi che si possa ovviare a questo inconveniente?
ciao e grazie



Da questa risposta si evince che tu non hai accettato il consiglio di Carlo
Costarella che ti suggeriva d i prendere in considerazione le soluzioni
proposte nei siti 
www.sitocomune.com
 o  
www.donkarl.com/it
 o
http://www.mantuanet.it/alessandro.baraldi/
 , nessuna delle quali fa uso del
metodo SendObject, quindi sono alternative al tuo modo di operare, che a
quanto pare non ti soddisfa.
Già che ci sei dai anche un'occhiata a ciò che è scritto in questo link:
http://www.granite.ab.ca/access/email.htm
-- 
Roberto
-----------------------------------------------------
il Sito Comune di it.comp.appl.access
http://www.sitocomune.com
----------------------------------------------------

 
http://www.granite.ab.ca/access/email.htm
il metodo SendObject mi soddisfa eccome! è proprio quello che mi occorre
per inviare in allegato file excel ottenute da query del mio db.
il problema è cha SendObject ha il limite che ho descritto, cioè quello
che mi farebbe comodo aggirare, se possibile. altrimenti mi toccherà
adottare un altro tipo di routine...
grazie comunque


 -- 
DoCmd.SendObject acSendTable, "Materie", acFormatTXT, 
"
TuoInd...@tiscali.it
", , , "prova", "Questa è una prova", False
Il false finale ti evita di aprire Outlook, cioè di editare il messaggio.
Comunque non hai postato il codice cioè non ho capito come è scritto.
Per esempio queste istruzioni non creano problemi:
Public sub InviaAllegato()
Dim i As Byte
For i = 1 To DMax("ID", "Indirizzi")
DoCmd.SendObject acSendTable, "Materie", acFormatTXT, DimmiDestinatario(i), 
, , "prova", "Questa è una prova", False
Next i
End sub
Public Function DimmiDestinatario(UnCodice As Integer) As String
'prende l'indirizzo da una tabella di indirizzi e-mail
'in base al numero ID
'presuppone che l'ID sia in sequenza.
DimmiDestinatario = DLookup("EMail", "Indirizzi", "ID =" & UnCodice)
End Function
Se hai un ativirus che controlla gli invii di allegati è possibile che crei 
un messaggio di conferma per ogni e-mail: in questo caso ti basterà 
disattivare i messaggi dell'antivirus.
Ciao, Carlo

 Ciao, Carlo
ciao Carlo,
anzitutto grazie per la disponibilità.
l'istruzione, banale che vorrei lanciare è la seguente:
DoCmd.SendObject acSendTable, nometabella, acFormatXLS, destinatari, , ,
oggettomail, corpomail
a cui passo parametricamente l'oggetto, il corpo del messaggio e le liste
di distribuzione. purtroppo il "False" finale (che non avevo utilizzato)
comporta l'invio automatico del messaggio, cosa che vorrei evitare per
lasciarla all'utente finale, mentre mi piacerebbe che si generassero tutti
i task di mail previsti dalla routine (una decina circa) prima di disporre
l'invio.
mi sembra però che il metodo in questione non lo consenta. confermi?
ciao e grazie ancora


 ha scritto nel messaggio 
news:d166e3$7kv$1...@news.newsland.it...

Se il problema è solo quello di far decidere all'utente se inviare o meno i 
messaggi puoi benissimo lanciare un messaggio con la richiesta e solo in 
caso affermativo, lanciare la procedura con False.
Per rendere la cosa più complessa e più completa potresti accodare tutti i 
destinatari e i nomi degli allegati in una tabella di appoggio (da svuotare 
e riempire dinamicamente) a cui avrai aggiunto anche un campo sì/no. 
Mostrerai i dati in una maschera tabellare e chiederai all'utente di 
flaggare solo le e-mail da inviare o di flaggarle tutte.
Il percorso logico è il seguente:
l'utente clicca sul pulsante "Invia E-Mail"
il codice controlla che la tabella di appoggio sia vuota
se vuota: genera una lista di destinatari e la presenta sotto forma di 
maschera tabellare
se piena: ripresenta la lista sotto forma di maschera tabellare
l'utente sceglie se inviare
se sceglie di inviare il codice avvia la procedura usando il False e alla 
fine svuota la tabella di appoggio ed esce dal codice
se sceglie di non inviare esce dal codice
Vedi un po' tu.
Ciao, Carlo