Show Menu
ARGOMENTI×

Invio di un'e-mail di compleanno

Introduzione

Questo caso d’uso illustra come pianificare l’invio periodico di un’e-mail a un elenco di destinatari il giorno del loro compleanno.
Per impostare questo caso di utilizzo, abbiamo creato il seguente flusso di lavoro di targeting:
Questo flusso di lavoro (esecuzione giornaliera) seleziona tutti i destinatari la cui data di nascita è la data corrente.
Questo caso di utilizzo si trova anche sotto forma di video. Per ulteriori informazioni, consultate Creazione di un video di workflow .
A questo scopo, create una campagna e fate clic sulla Targeting and workflows scheda. Per ulteriori informazioni, vedere Creazione della destinazione principale in una sezione del flusso di lavoro .
Effettuate quindi le seguenti operazioni:

Pianificazione dell'invio

  1. Innanzitutto, aggiungete un pianificatore per attivare l'invio giornaliero. Nell'esempio seguente, la consegna viene creata ogni giorno alle 6 del mattino.

Identificazione dei destinatari il cui compleanno è

Dopo aver configurato l' Scheduler attività in modo che il flusso di lavoro inizi ogni giorno, identificate tutti i destinatari la cui data di nascita è uguale alla data corrente.
A questo scopo, eseguire i seguenti passaggi:
  1. Trascinate e rilasciate un' Query attività nel flusso di lavoro e fate doppio clic su di essa.
  2. Fate clic sul collegamento Modifica query e selezionate Filtering conditions .
  3. Fate clic sulla prima cella della Expression colonna e fate clic Edit expression per aprire l'editor di espressioni.
  4. Fate clic Advanced selection per selezionare la modalità di filtro.
  5. Selezionare Edit the formula using an expression e fare clic Next per visualizzare l'editor di espressioni.
  6. Nell'elenco delle funzioni, fare doppio clic Day , accessibile tramite il Date nodo. Questa funzione restituisce il numero che rappresenta il giorno corrispondente alla data passata come parametro.
  7. Nell’elenco dei campi disponibili, fate doppio clic Birth date . Nella sezione superiore dell'editor viene visualizzata la seguente formula:
    Day(@birthDate)
    
    
    Fate clic Finish per confermare.
  8. Nell'editor di query, selezionare la prima cella della Operator colonna nella prima cella equal to .
  9. Quindi, fare clic sulla prima cella della seconda colonna ( Value ), quindi fare clic Edit expression per aprire l'editor di espressioni.
  10. Nell'elenco delle funzioni, fare doppio clic Day , accessibile tramite il Date nodo.
  11. Fare doppio clic sulla GetDate funzione per recuperare la data corrente.
    Nella sezione superiore dell'editor viene visualizzata la seguente formula:
    Day(GetDate())
    
    
    Fate clic Finish per confermare.
  12. Ripetere questa procedura per recuperare il mese di nascita corrispondente al mese corrente. A tale scopo, fare clic sul Add pulsante e ripetere i passaggi da 3 a 10, sostituendoli Day con Month .
    La query completa è la seguente:
Collegate il risultato dell' Query attività a un' Email delivery attività per inviare un'e-mail all'elenco di tutti i destinatari alla data del loro compleanno.

Inclusi i destinatari nati il 29 febbraio (facoltativo)

Se si desidera includere tutti i destinatari nati il 29 febbraio, questo caso d'uso illustra come pianificare l'invio periodico di un'e-mail a un elenco di destinatari per il loro compleanno, che si tratti o meno di un anno bisestile.
Le fasi di implementazione principali per questo caso di utilizzo sono:
  • Selezione dei destinatari
  • Selezione se si tratta o meno di un anno bisestile
  • Selezione dei destinatari nati il 29 febbraio
Per impostare questo caso di utilizzo, abbiamo creato il seguente flusso di lavoro di targeting:
Se l'anno in corso non è un anno bisestile e il flusso di lavoro è in esecuzione il 1 marzo, dobbiamo selezionare tutti i destinatari che avrebbero avuto il loro compleanno ieri (29 febbraio) e aggiungerli all'elenco dei destinatari. In ogni altro caso non è richiesta alcuna azione aggiuntiva.

Passaggio 1: Selezione dei destinatari

Dopo aver configurato l' Scheduler attività in modo che il flusso di lavoro inizi ogni giorno, identificate tutti i destinatari il cui anniversario è il giorno corrente.
Se l'anno corrente è un anno bisestile, tutti i beneficiari nati il 29 febbraio vengono automaticamente inclusi.
La selezione dei destinatari il cui compleanno corrisponde alla data corrente viene presentata nella sezione Identificare i destinatari il cui compleanno è .

Passaggio 2: Selezionare se si tratta o meno di un anno bisestile

L' Test attività consente di verificare se si tratta di un anno bisestile e se la data corrente è il 1 marzo.
Se il test viene verificato (l'anno non è un anno bisestile - non c'è il 29 febbraio - e la data corrente è effettivamente il 1 marzo), la True transizione è abilitata e i destinatari nati il 29 febbraio saranno aggiunti alla consegna del 1 marzo. In caso contrario, la False transizione viene abilitata e la consegna viene recapitata solo ai destinatari nati alla data corrente.
Copiate e incollate il codice riportato di seguito nella Initialization script sezione della Advanced scheda.
function isLeapYear(iYear)
{
    if(iYear/4 == Math.floor(iYear/4))
    {
        if(iYear/100 != Math.floor(iYear/100))
        {
            // Divisible by 4 only -> Leap Year
            return 1;
        }
        else
        {
            if(iYear/400 == Math.floor(iYear/400))
            {
                // Divisible by 4, 100 and 400 -> Leap year
                return 1;
            }
        }
    }
    // all others: no leap year
    return 0;
}

// Return today's date and time
var currentTime = new Date()
// returns the month (from 0 to 11)
var month = currentTime.getMonth() + 1
// returns the day of the month (from 1 to 31)
var day = currentTime.getDate()
// returns the year (four digits)
var year = currentTime.getFullYear()

// is current year a leap year?
vars.currentIsALeapYear = isLeapYear(year);

// is current date the first of march?
if(month == 3 && day == 1) {
  // today is 1st of march
vars.firstOfMarch = 1;
}

Aggiungi la seguente condizione nella Conditional forks sezione:
vars.currentIsALeapYear == 0 && vars.firstOfMarch == 1

Passaggio 3: Selezionare i destinatari nati il 29 febbraio

Create un' Fork attività e collegate una delle transizioni in uscita a un' Query attività.
In questa query, selezionare tutti i destinatari la cui data di nascita è il 29 febbraio.
Combinate i risultati con un' Union attività.
Collegate i risultati dei due rami Test attività a un' Email delivery attività per inviare un'e-mail all'elenco di tutti i destinatari il giorno del loro compleanno, anche a quelli nati il 29 febbraio durante un anno non bisestile.

Creazione di una consegna ricorrente

Aggiungi un'attività di consegna ​ricorrente in base al modello e-mail di compleanno che desideri inviare.
Affinché i flussi di lavoro possano essere eseguiti, è necessario avviare i flussi di lavoro tecnici relativi al processo della campagna. Per ulteriori informazioni, consulta la sezione Elenco dei flussi di lavoro dei processi delle campagne.
Se per la campagna sono abilitati i passaggi di approvazione, le consegne verranno inviate solo dopo che tali passaggi saranno stati confermati. Per ulteriori informazioni, vedere Scelta dei processi da approvare .