Alle 10:38, giovedì 15 marzo 2007, iagnelli ha scritto:
> Buongiorno,
>
> con la macro sotto riportata:
>
>
> REM ***** Invia documento *****
[...]
>
> ottenuta col registratore di OpenOffice, provoco lapertura della finestra
> messaggio di outlook con allegato il documento corrente (un report di Calc
> nel quale è contenuto anche lindirizzo mail del destinatario).
>
> Esiste un codice semplice per recuperare lindirizzo, inserirlo nella mail
> e inviarla automaticamente?
Finchè si tratta di recuperare il dato in una cella e inserirlo come indirizzo
destinatario della mail, le cose sono semplici:
---------------------------------------------------------------------------------------------------
REM ***** BASIC *****
Sub SendMailWithRecipient
'recupera l'indirizzo
oSheet = ThisComponent.Sheets.getByName("Tabella1")
oCell = oSheet.getCellRangeByName("A1")
sAddress = oCell.String
'prepara l'email
oFrame = ThisComponent.CurrentController.Frame
oDispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
Dim mArgs(0) As New com.sun.star.beans.PropertyValue
mArgs(0).Name = "Recipient"
mArgs(0).Value = sAddress
oDispatcher.executeDispatch(oFrame, ".uno:SendMail", "", 0, mArgs())
End Sub
---------------------------------------------------------------------------------------------------
Per ottenere l'invio automatico occorre cambiare completamente approccio.
Non è complicato ma occorre un po di esperienza con l'API di OOo.
I servizi API da usare sono quelli definiti nel modulo "mail"
Qui trovi la docu di riferimento:
http://api.openoffice.org//docs/common/ref/com/sun/star/mail/module-ix.html
Esiste anche un altro servizio API per mandare le email... anzi due:
com.sun.star.system.SimpleCommandMail
com.sun.star.system.SimpleSystemMail
Si usano allo stesso modo ma funzionano su un principio diverso:
Il primo sfrutta la linea di comando per preparare ed inviare i messaggi,
mentre il secondo usa le MAPI di windows (Mail API)
Questi due servizi comunque, seppure dovrebbero essere ancora presenti
verranno presto "deprecati" ovvero dismessi, perchè con la versione 2.0
l'infrastruttura per inviare email è stata completamente ridisegnata.
Se vuoi vedere comunque un esempio del loro utilizzo, lo trovi nel manuale di
Andrew Pitonyak (5.28 Sending Email)
http://www.pitonyak.org/
ciao
Paolo M
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]