Includere oggetto database in email

di il
6 risposte

Includere oggetto database in email

Buon pomeriggio e buon 2018 a tutti,
un quesito relativamente ad ACCESS 2016 (che gira su windows 10):
nel mio db ho previsto una query con relativo report per inviare un sollecito a specifici utenti il cui indirizzo mail viene chiesto dalla query come parametro esterno. Allo scopo, ho generato un pulsante (“invia sollecito”) che esegue una macro. Questa fa tre cose: apre il report, lo inserisce come allegato in una mail ed infine chiude la finestra del report.
Come faccio, nella macro, a rendere variabile il campo “to” in modo da inviare la mail all’indirizzo indicato dall’utente nella query, senza dovergli far riscrivere l’indirizzo email nel campo “a” di outlook?

Vi ringrazio in anticipo per le risposte.
Ciao
Antonio

6 Risposte

  • Re: Includere oggetto database in email

    Il report mostra sempre e solo un indirizzo e-mail?
    Se sono molti, ma prima come facevi a inserirli? Tutto a mano separando con punto-virgola?

    Leggo da qui
    https://support.office.com/it-it/article/Azione-di-macro-IncludiOggettoDatabaseInMessaggioDiPostaElettronica-de087df0-6d0c-4dfc-b1b6-ba1172d28ac5
    che occorre separare "manualmente". Con le macro questa cosa, non dico che non si possa fare, ma la vedo alquanto difficoltosa. Io ragiono più con VBA e ritengo che dovresti ciclare tutti gli indirizzi e-mail separandoli con punto-virgola, sfruttando una variabile di tipo String. La variabile poi la dai in pasto all'argomento A.
  • Re: Includere oggetto database in email

    Ciao Osvaldo,
    grazie per la risposta.
    Si, il report sarà sempre relativo ad un indirizzo email. Ed appunto mediante la query sottostante viene chiesto di inserire tale indirizzo email al quale
    dovrà essere destinata la mail avente come allegato il report.

    per intenderci la query è la seguente:

    SELECT T_SINISTRI.*, T_CONTROPARTI.*, T_ATTORI.*, T_COMPAGNIE.*, T_COMPAGNIE.PEC
    FROM (T_COMPAGNIE INNER JOIN T_CONTROPARTI ON T_COMPAGNIE.ID = T_CONTROPARTI.[C_COMPAGNIA-ASS]) INNER JOIN (T_ATTORI INNER JOIN T_SINISTRI ON T_ATTORI.A_CF = T_SINISTRI.SIN_CF_ATTORE) ON T_CONTROPARTI.C_CF = T_SINISTRI.SIN_CF_CONTROPARTE
    WHERE (((T_COMPAGNIE.PEC)=[inserisci l'indirizzo PEC]));

    Utilizzando VBA, come potrei inserire nel campo "a" del comando DoCmd.SendObject, al posto di un indirizzo email fisso ciò che viene inserito nella query dall'esterno con la condizione WHERE??
  • Re: Includere oggetto database in email

    Provo a ricostruire l'intero scenario a parole mie.
    1. Tu hai un report che poggia su una query con parametro
    WHERE (((T_COMPAGNIE.PEC)=[inserisci l'indirizzo PEC]));
    2. Quando apri il report appare la finestra parametro con scritto "inserisci l'indirizzo PEC".
    3. Il report quindi si apre su un solo record.
    Giusto?

    Se ho ragionato bene, secondo me in A devi scrivere:
    [Reports]![NomeReport]![PEC]
  • Re: Includere oggetto database in email

    Ci ho provato,
    ho appena seguito il tuo suggeriento, e la mia riga è diventata:

    DoCmd.SendObject acReport, "R_Sinistri_lettera_pec", "PDFFormat(*.pdf)", "[Reports]![R_Sinistri_lettera_pec]![PEC]", "", "", "Invio Sollecito", "Si allega alla presente quanto in oggetto. Distinti Saluti", True, ""

    Il risultato è stato avere il seguente testo " [Reports]![R_Sinistri_lettera_pec]![PEC] " nel campo "a" di outlook
  • Re: Includere oggetto database in email

    ...
    tolgo le virgolette:

    DoCmd.SendObject acReport, "R_Sinistri_lettera_pec", "PDFFormat(*.pdf)", [Reports]![R_Sinistri_lettera_pec]![PEC], "", "", "Invio Sollecito", "Si allega alla presente quanto in oggetto. Distinti Saluti", True, ""

    ... ma Access mi dice che non trova nessun campo 'PEC' a cui viene fatto riferimento ...
  • Re: Includere oggetto database in email

    RISOLTO!!!
    GRAZIE!!!
    nel report c'era una casella combinata che mi visualizzava l'indirizzo pec ... non la casella di testo!
    Ora ho inserito la casella di testo e funziona!

    ancora grazie
Devi accedere o registrarti per scrivere nel forum
6 risposte