Loading

Aggiunta di un indirizzo Cc nell'azione email del flusso

Data pubblicazione: Aug 25, 2025
Descrizione

Nei flussi Salesforce è presente un'azione con cui è possibile inviare email. Questa azione è una soluzione ottimale per le soluzioni basate su codice, soprattutto per gli amministratori Salesforce. Queste azioni possono essere utilizzate in modelli di email e più email. È possibile definire il corpo, gli elenchi degli indirizzi dei destinatari, il corpo formattato in testo RTF (vero o falso), l'indirizzo email del mittente, l'oggetto e così via. Tutti questi elementi fungono da input nell'azione email del flusso e si possono aggiungere dinamicamente definendo le variabili. Ciò porta a una notevole flessibilità nelle operazioni correlate alle email. L'azione email del flusso standard non supporta l'aggiunta di indirizzi Cc alle nostre email, quindi vedremo in che modo un utente può aggiungere indirizzi email Cc tramite i flussi.

Risoluzione

La soluzione più ottimale per questo problema ci consente di creare un'azione invocabile personalizzata che offre un punto di partenza da cui si possono utilizzare le funzionalità personalizzate fornite da Apex nei flussi. Si tratta di un approccio a "scatola nera" in cui si stabilisce un'azione Apex personalizzata nei flussi e si forniscono i parametri obbligatori per eseguire il nostro lavoro. Non è necessario sapere cosa accade all'interno di quell'azione, ma è stato fornito il file con dei parametri per ottenere i risultati desiderati.

Di seguito sono riportati i passaggi necessari per creare, distribuire e configurare la funzione di email Cc nei nostri flussi.

 

Passaggio 1: Fare clic sull'icona Ingranaggio nell'angolo superiore destro della schermata e selezionare Developer Console

 

Picture1.png

 

Passaggio 2: fare clic per creare una nuova classe Apex

 

Picture2.png

 

Passaggio 3: aggiungere il seguente codice

 

public class EmailSender {    @InvocableMethod(label='Send Email with CC')    public static List<List<String>> sendEmailWithCC(List<EmailRequest> requests) {        List<List<String>> responses = new List<List<String>>();        for (EmailRequest req : requests) {            Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();            mail.setToAddresses(new String[] {req.toAddress});            if (req.ccAddress != null) {                mail.setCcAddresses(new String[] {req.ccAddress});            }            mail.setSubject(req.subject);            mail.setPlainTextBody(req.body);             Messaging.SendEmailResult[] results = Messaging.sendEmail(new Messaging.SingleEmailMessage[] {mail});            if (results[0].isSuccess()) {                responses.add(new List<String>{'Email sent successfully'});            } else {                responses.add(new List<String>{'Error sending email: ' + results[0].getErrors()[0].getMessage()});            }        }        return responses;    }    public class EmailRequest {    @InvocableVariable(required=true)    public String toAddress;    @InvocableVariable(required=true)    public String ccAddress;    @InvocableVariable(required=true)    public String subject;        @InvocableVariable(required=true)    public String body;}}    

 

Passaggio 4: accedere ai Flussi e creare un nuovo Flusso schermata

 

Picture3.png

 

Passaggio 5: fare clic su Aggiungi elemento nel flusso, selezionare Azione e quindi selezionare il metodo invocabile creato nella classe Apex

 

Picture4.png

 

Passaggio 6: fornire i parametri alla nostra azione

 

Picture5.png

 

Passaggio 7salvare e attivare il flusso

 

Personalizzazione: il seguente flusso schermata può essere reso dinamico in base alle nostre esigenze e consente di accettare input dall'utente (email destinatario e CC) e di inviare email, rispettivamente. I flussi offrono numerose possibilità di soddisfare il nostro requisito e questo flusso può essere modificato in base ai requisiti

 

_____________________________________________

 

Scritto da: Maham Hassan | Forum Ambassador
Maham Hassan è 2x Mom, MVP Salesforce MVP, Direttore e Technical Architect @ Cloud-1 & Check Automate, Fondatore di Dubai Dreamin, con 16 certificazioni, Trailblazer Mentor, Community Group Leader e All Star Ranger. 

 

I materiali inviati riflettono esclusivamente le opinioni dell'utente che li ha resi disponibili e non le opinioni di Salesforce, indipendentemente dal fatto che l'utente sia affiliato a Salesforce, e possono contenere o costituire prodotti, servizi, informazioni, dati, contenuti e altri materiali resi disponibili da o per conto di terze parti ("Materiali di terze parti").  Salesforce non controlla né approva, né è responsabile per i materiali di terze parti, inclusa la loro accuratezza, validità, tempestività, completezza, affidabilità, integrità, qualità, legalità, utilità o sicurezza, o qualsiasi diritto di proprietà intellettuale applicabile. Tutti i materiali resi disponibili attraverso qualsiasi bacheca o forum in risposta a domande pubblicate, o che in altro modo pretendono di rispondere a qualsiasi domanda, comprese le domande su Salesforce o sui programmi, sono resi disponibili solo per conoscenza generale e non devono mai essere considerati come risposte a domande specifiche degli utenti (anche se una risposta è contrassegnata come risposta "migliore" o con qualifiche simili). È sempre consigliabile contattare l'assistenza Salesforce per ottenere risposte alle proprie domande specifiche. Salesforce non ha alcun controllo sui materiali inviati e non è responsabile di alcun uso o abuso (inclusa la distribuzione) da parte di terze parti di tali materiali.

 

In caso di domande, è possibile attingere al sapere dell'intera Trailblazer Community qui: https://trailhead.salesforce.com/trailblazer-community/feed

Numero articolo Knowledge

001979871

 
Caricamento
Salesforce Help | Article