Een verjaardags-e-mail verzenden sending-a-birthday-email

In dit geval wordt beschreven hoe u een terugkerende e-mail naar een lijst met ontvangers op de dag van hun geboortedatum wilt sturen.

Voor het instellen van dit gebruiksgeval hebben we de volgende workflow voor doelversie gemaakt:

Met deze (dagelijkse) workflow worden alle ontvangers geselecteerd die op de huidige datum jarig zijn.

Hiertoe maakt u een campagne en voegt u een campagneworkflow.

Voer vervolgens de hieronder beschreven stappen uit.

Ontvangers identificeren van wie de geboortedatum is identifying-recipients-whose-birthday-it-is

Nadat u de Scheduler activiteit zodat de werkstroom elke dag begint, identificeer alle ontvangers waarvan geboortedatum de huidige datum evenaart.

Hiervoor voert u de volgende stappen uit:

  1. Sleep een Query in de werkstroom en dubbelklik erop.

  2. Klik op de knop Query bewerken koppelen en selecteren Filtering conditions.

  3. Klik op de eerste cel van het dialoogvenster Expression kolom en klik op Edit expression om de expressie-editor te openen.

  4. Klikken Advanced selection om de filtermodus te selecteren.

  5. Selecteren Edit the formula using an expression en klik op Next om de expressie-editor weer te geven.

  6. Dubbelklik in de lijst met functies op Day, die toegankelijk is via de Date knooppunt. Deze functie retourneert het getal dat de dag vertegenwoordigt die overeenkomt met de datum die als parameter is doorgegeven.

  7. Dubbelklik in de lijst met beschikbare velden Birth date. In het bovenste gedeelte van de editor wordt dan de volgende formule weergegeven:

    code language-none
    Day(@birthDate)
    

    Klik op Finish om te bevestigen.

  8. In de vraagredacteur, in de eerste cel van Operator kolom, selecteren equal to.

  9. Klik vervolgens op de eerste cel van de tweede kolom (Value) en klik op Edit expression om de expressie-editor te openen.

  10. Dubbelklik in de lijst met functies op Day, die toegankelijk is via de Date knooppunt.

  11. Dubbelklik op de knop GetDate om de huidige datum op te halen.

    In het bovenste gedeelte van de editor wordt de volgende formule weergegeven:

    code language-none
    Day(GetDate())
    

    Klik op Finish om te bevestigen.

  12. Herhaal deze procedure om de geboortemaand van de huidige maand op te halen. Om dit te doen, klik Add en herhaal stap 3 tot en met 10, vervangen Day with Month.

    De volledige vraag is als volgt:

Het resultaat van de opdracht koppelen Query activiteit aan een Email delivery activiteit om een e-mail naar de lijst van al uw ontvangers op hun verjaardag te verzenden.

Inclusief ontvangers geboren op 29 februari (optioneel) including-recipients-born-on-february-29th--optional-

Als u alle ontvangers wilt opnemen die op 29 februari zijn geboren, toont deze gebruikszaak hoe u een terugkerende e-mail naar een lijst met ontvangers voor hun verjaardag wilt sturen - of het nu een schrikkeljaar is of niet.

De belangrijkste implementatiestappen voor dit gebruiksgeval zijn:

  • Ontvangers selecteren
  • Kiezen of het een schrikkeljaar is
  • Ontvangers selecteren die op 29 februari zijn geboren

Voor het instellen van dit gebruiksgeval hebben we de volgende workflow voor doelversie gemaakt:

Indien het lopende jaar is geen schrikkeljaar en de workflow wordt uitgevoerd op 1 maart, dus moeten we alle ontvangers selecteren die gisteren (29 februari) jarig zouden zijn en ze toevoegen aan de lijst met ontvangers. In alle andere gevallen is geen aanvullende actie vereist.

Stap 1: Ontvangers selecteren step-1--selecting-the-recipients

Nadat u de Scheduler activiteit zodat de werkstroom elke dag begint, identificeer alle ontvangers de waarvan verjaardag de huidige dag is.

NOTE
Als het huidige jaar een schrikkeljaar is, worden alle ontvangers die op 29 februari geboren zijn automatisch opgenomen.

Ontvangers selecteren waarvan de verjaardag overeenkomt met de huidige datum wordt weergegeven in het dialoogvenster Ontvangers identificeren van wie de verjaardag het is sectie.

Stap 2: Selecteer of het een schrikkeljaar is step-2--select-whether-or-not-it-is-a-leap-year

De Test Met deze activiteit kunt u controleren of het een schrikkeljaar is en of de huidige datum 1 maart is.

Als de test wordt geverifieerd (het jaar is geen schrikkeljaar - er is geen 29 februari - en de huidige datum is inderdaad 1 maart), True de overgang is ingeschakeld en de op 29 februari geboren ontvangers worden toegevoegd aan de levering van 1 maart. Anders wordt False de overgang wordt toegelaten en slechts zullen de ontvangers die op de huidige datum worden geboren de levering ontvangen.

Kopieer en plak de onderstaande code in de Initialization script van de Advanced tab.

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;
}

Voeg de volgende voorwaarde in toe Conditional forks sectie:

vars.currentIsALeapYear == 0 && vars.firstOfMarch == 1

Stap 3: Selecteer de ontvangers die op 29 februari zijn geboren step-3--select-any-recipients-born-on-february-29th

Een Fork activiteit en verbind één van de uitgaande overgangen aan een Query activiteit.

Selecteer in deze query alle ontvangers waarvan de geboortedatum 29 februari is.

De resultaten combineren met een Union activiteit.

De resultaten van de twee koppelingen Test vertakkingen van activiteiten aan een Email delivery activiteit om een e-mail naar de lijst van al uw ontvangers op hun verjaardag te verzenden, zelfs aan hen die op 29 februari tijdens een niet-schrikkeljaar geboren worden.

Een terugkerende levering maken creating-a-recurring-delivery-in-a-targeting-workflow

Voeg een Terugkerende levering activiteit op basis van de e-mailsjabloon voor verjaardag die u wilt verzenden.

CAUTION
Om de workflows uit te voeren, moeten de technische workflows met betrekking tot het campagnepakket worden gestart. Raadpleeg voor meer informatie de Lijst van technische werkstromen sectie.
Als de goedkeuringsstappen voor de campagne zijn ingeschakeld, worden de leveringen pas verzonden nadat deze stappen zijn bevestigd. Raadpleeg de sectie voor meer informatie hierover.

recommendation-more-help
cffff7e4-091f-472e-87ca-52087599f99d