Newsgroup: it.comp.appl.access
Titolo: invio pdf per email

Ho il seguente problema:
Devo fare delle fatture ai miei clienti per spese di trasporto.IO faccio le
fatture riepilogative per ogni cliente alla fine di ogni mese MA le bolle di
accompagnamento relative ai viaggi mi arrivano sempre dopo, per cui invio a
fine mese SOLO le fatture e poi devo inviare via email in formato PDF le
bolle di consegna controfirmate dai destinatari.Sto cercando di
automatizzare , mi servirebbe un procedimento che invii in automatico le
bolle in PDF all'email del cliente .
Ho la seguente forms maschere continue basata su una query fatture con i
seguenti campi:
clienteID - numfattura- datafattura -idviaggio -fotobolla - emailcliente
pdfinviato
154 2 15/1/06 k155 FileExist("G:\fatture\" & [IDVIAGGIO]) '
u...@ds.it
' si
(campo si/no)
154 2 15/1/06 k156 FileExist("G:\fatture\" & [IDVIAGGIO]) si
154 2 15/1/06 k157 FileExist("G:\fatture\" & [IDVIAGGIO]) no
153 1 15/1/06 k158 FileExist("G:\fatture\" & [IDVIAGGIO])
153 1 15/1/06 k159 FileExist("G:\fatture\" & [IDVIAGGIO])
155 4 15/1/06 k160 FileExist("G:\fatture\" & [IDVIAGGIO])
Quando mi arriva una bolla io faccio la scansione PDF e la inserisco nella
cartella FATTURA , identificata con il suo id (ES.K155), la stringa
FileExist("G:\fatture\" & [IDVIAGGIO]) quindi mi dice se IL PDF è presente e
se posso inviarlo via email.
A questo punto: Io ho bisogno di aprire la maschera, visualizzare quali sono
le bolle arrrivare, inviarle per email al cliente e spuntare con si o no il
campo pdfinviato.
La email dovrebbe essere piu o meno cosi:
Gentile cliente .....
inviamo in allegato i seguenti pdf: K155 - K156 relativi alla sua fattura
numero 2 del 15/01/06
Distinti saluti
 
Non so se mi sono spiegato bene, potete aiutarmi ?
Stefano
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 ha scritto nel messaggio news:151Z38Z99Z229Y...@usenet.libero.it...

Dai un'occhiata nel Sito Comune (
www.sitocomune.com
) Sezione General e nel sito di Alessandro BARALDI (
www.alessandrobaraldi.it
)...
Ciao.
-- 
Sergio MAZZA 


Io uso gia il seguente codice per inviare email ma in questo momento siccome
faccio fatture SEMPRE SOLO con 3 allegati(3 trasporti) e non di piu va bene
.Il problema e che ora dovrò le fatture con un numero di VIAGGI non
prestabilito 1,2,5 ect... .Quindi dovrei modificare questo codice per fare
in modo di inviare le bolle di cui ho fatto la scansione che possono esse
1,2 oppure 4 o 5 .In pratica di quei record che hanno il campo della query
:FileExist("G:\fatture\" & [IDVIAGGIO]) =sì (uguale a si)
potete aiutarmi ?
Questo è parte del codice che uso per inviare email, trovato sul sitocomune
by Andrea Barchetti
Dim MSGX, OBJX As Variant
Dim aTO(0 To 1) As String
Dim aCC(0 To 1) As String
Dim aBCC(0 To 0) As String
Dim aFiles(0 To 2) As String
 
        aFiles(0) = "C:\EMAIL\Qui.ZIP"
        aFiles(1) = "C:\EMAIL\Quo.ZIP"
        aFiles(2) = "C:\DOC\Qua.PDF"
        aTO(0) = "
pi...@pluto.it
"
        aTO(1) = "
eta...@pluto.it
"
        aCC(0) = "
pape...@pluto.it
"
        aCC(1) = "
Pape...@pluto.it
"
        aBCC(0) = "
topo...@pluto.it
"
 
        OBJX = "Oggetto del messaggio"
        MSGX = "Testo del messaggio"
 
        Invia_MSOE aTO, aCC, aBCC, OBJX, MSGX, aFiles


 ha scritto nel messaggio news:80Z117Z110Z216Y...@usenet.libero.it...

Quindi non sai più a priori quanti allegati o indirizzi di posta elettronica utilizzare?
Se è così devi parametrizzare quel pezzo di codice; una possibile soluzione potrebbe essere l'utilizzo della funzione Split (vedi 
help) per crearti gli array:
es.
'---
Dim MSGX, OBJX As Variant
Dim aTO() As String
Dim aCC() As String
Dim aBCC() As String
Dim aFiles() As String
 aFiles() = Split(stringaFilesDaInviare,"carattereDelimitatore")
...
La stringaFilesDaInviare dovrebbe essere composta:
"c:\file1.pdf;c:\documenti\files2.txt;..."
qui ho utilizzato il punto e virgola come separatore ma puoi utilizzare il carattere che vuoi, basta che lo indichi nella funzione 
Split...
Ciao.
-- 
Sergio MAZZA 

Scusa se ti rompo ma ho provato in questo modo ma nu funziona, mi da errore
"TIPO NON CORRISPONDENTE" ,
Uso il codice seguente, siccome ho Access97 ho scaricato la fuinzione fSplit
dal sito comune:
Private Sub Comando60_Click()
Dim MSGX, OBJX As Variant
Dim aTO(0 To 1) As String
Dim aCC(0 To 1) As String
Dim aBCC(0 To 0) As String
Dim aFiles(0 To 1) As String
Dim Stringa
Stringa =
"c:\fatture\22326_Fattura_00522_30-06-06\K1040_28-06-06\cmr.pdf;c:\fatture\22326_Fattura_00522_30-06-06\K1040_28-06-06\cmr.pdf"
 
        aFiles(0) = fSplit(Stringa, ";")
Grazie per l'aiuto


 Grazie per l'aiuto
Non riesco a trovare l'esempio che dici, ma ho l'impressione che quella 
funzione non ritorni un'array come invece fa la Split di VBA (no '97).
Se vuoi puoi utilizzare VBScript che ha la Split inserendo i riferimenti 
alla libreria Microsoft Scripting Runtime; scarichi l'ultima versione (e 
help in italiano) da:
http://msdn.microsoft.com/library/default.asp?url=/downloads/list/webdev.asp
Documentazione:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnanchor/html/scriptinga.asp
Ciao.
-- 
Sergio MAZZA 


Ti passo la funzione:
Function fSplit(ByVal sIn As String, Optional sDelim As String, Optional
nLimit As Long = -1, Optional bCompare As Long = vbBinaryCompare) As Variant
 
 Dim sRead As String
 Dim sOut() As String
 Dim nC As Integer
 
  If sDelim = "" Then
     fSplit = sIn
  End If
 sRead = fReadUntil(sIn, sDelim, bCompare)
 Do
    ReDim Preserve sOut(nC)
    sOut(nC) = sRead
    nC = nC + 1
    If nLimit <> -1 And nC >= nLimit Then
        Exit Do
    End If
    sRead = fReadUntil(sIn, sDelim)
 Loop While sRead <> ""
ReDim Preserve sOut(nC)
sOut(nC) = sIn
fSplit = sOut
End Function


 End Function
Non la leggo, ma a parte questo se la funzione fSplit si comportasse come la 
Slipt originaria la sintassi dovrebbe essere:
nomeArray = fSplit(stringaParamentri,separatore)
Ciao.
-- 
Sergio MAZZA 


Scusa se rompo, ho verificato, la funzione è ok pero messain questa rutine
mi da il messaggio"ERRORE DI COMPILAZIONEIMPOSSIBILE ASSEGNARE ALLA
MATRICE."
Dim MSGX, OBJX As Variant
Dim aTO(0 To 1) As String
Dim aCC(0 To 1) As String
Dim aBCC(0 To 0) As String
Dim aFiles(0 To 3) As String
  Dim MyString, stringa
MyString = "C:\fatture\22326_Fattura_00522_30-06-06\K1040_28-06-06\cmr.pdf
;C:\fatture\22326_Fattura_00522_30-06-06\K1041_28-06-06\cmr.pdf
;C:\fatture\22326_Fattura_00522_30-06-06\K1042_28-06-06\cmr.pdf
;;C:\fatture\22326_Fattura_00522_30-06-06\K1043_28-06-06\cmr.pdf"
stringa = fSplit(MyString, ";", -1, 1)
aFiles = stringa
Help


 Help
C'è un dopppio punto e virgola nella stringa...
Ciao.
-- 
Sergio MAZZA