Dynamische inhoud toevoegen aan e-mailberichten

Fooi

Als u Dynamics 365 Customer Insights gratis wilt uitproberen, kunt u zich aanmelden voor een proefversie van 30 dagen.

Belangrijk

Dit artikel is alleen van toepassing op uitgaande marketing.

Dynamische inhoud wordt omgezet vlak voordat een bericht naar een specifieke persoon wordt verzonden. Doorgaans gebruikt u dynamische inhoud om gegevens uit de contactpersoonrecord van de geadresseerde (zoals voor- en achternaam) samen te voegen, speciale koppelingen toe te voegen en gegevens en koppelingen uit de inhoudsinstellingen op te nemen. Als het voor u geen probleem is om in code te werken, kunt u ook aangepaste logica maken die voorwaardelijke instructies, for-each-lussen enzovoort bevat. U kunt dynamische inhoud overal in de hoofdtekst van uw bericht gebruiken en kunt tevens enkele typen dynamische waarden gebruiken in de koptekstvelden van het bericht (onderwerp en adres en naam van afzender).

Inhoudsinstellingen gebruiken om opslagplaatsen van standaardwaarden en vereiste waarden voor e-mailberichten in te stellen

Inhoudsinstellingen zijn sets met standaardwaarden en vereiste waarden die in marketing-e-mailberichten kunnen worden gebruikt. Elk bevat een Abonneecentrum-koppeling, de koppeling Doorsturen naar een vriend, social-mediakoppelingen, uw postadres en andere gegevens die met de functie voor personalisatie als dynamische waarden in het bericht kunnen worden geplaatst.

Dynamics 365 Customer Insights - Journeys wordt geleverd met één standaardrecord met inhoudsinstellingen. Deze record is vooraf geconfigureerd voor gebruik van het standaardabonneecentrum (ook kant-en-klaar meegeleverd). U kunt deze record indien nodig aanpassen en u kunt ook aanvullende records maken. U kunt elke klantreis instellen op het gebruik van een specifieke record met inhoudsinstellingen, wat betekent dat alle door die klantreis verzonden berichten dezelfde record gebruiken. Elke reis kan echter een andere record gebruiken, wat betekent dat u een identiek marketing-e-mailontwerp in twee of meer klantreizen kunt gebruiken, waarbij met elk een andere record met inhoudsinstellingen wordt opgegeven. Als u meer dan één record met inhoudsinstellingen hebt, wordt exact één ervan de standaardset, die automatisch wordt toegepast op elke nieuwe klantreis die u maakt.

De waarden voor inhoudsinstellingen worden eerst geëvalueerd bij het verzenden. Dit betekent dat u op elk gewenst moment een record met inhoudsinstellingen kunt bewerken en dat voor alle in behandeling zijnde en toekomstige e-mailberichten automatisch de laatste waarden worden gebruikt.

Elke record met inhoudsinstellingen die u gebruikt moet beschikbaar zijn voor de externe marketingservices, die het opstellen en leveren van e-mail beheren. Daarom moet u uw records met inhoudsinstellingen publiceren door In gebruik nemen te kiezen telkens wanneer u een nieuwe maakt.

Notitie

Als u andere typen waarden hebt die u vaak gebruikt in e-mailberichten en/of op het niveau van de klantreis wilt beheren, voegt u deze als aangepaste velden toe aan de entiteit voor inhoudsinstellingen. U doet dit op dezelfde manier als voor andere typen entiteiten in Dynamics 365. In de huidige versie moeten alle aangepaste velden voor de entiteit voor inhoudsinstellingen echter van het type tekst (tekenreeks) zijn. Meer informatie: Customer Insights - Journeys aanpassen

U kunt als volgt een record met inhoudsinstellingen bekijken, bewerken of maken:

  1. Ga naar Uitgaande marketing>Marketingsjablonen>Inhoudsinstellingen.

  2. Er wordt een standaardlijstpagina geopend waarop u de lijst kunt weergeven, sorteren, doorzoeken en filteren om een bepaalde record te zoeken. U kunt ook knoppen op de opdrachtbalk gebruiken om een record toe te voegen of te verwijderen. Selecteer een record die u wilt openen om te bewerken of selecteer Nieuw op de opdrachtbalk om een nieuwe record te maken.

  3. Het formulier Inhoudsinstellingen wordt geopend. Als u een record bewerkt die al in gebruik is genomen, moet u Bewerken op de opdrachtbalk kiezen voordat u deze record kunt bewerken. Als u een nieuwe record maakt, kunt u simpelweg beginnen met het invullen van de velden.

    Het formulier Inhoudsinstellingen.

  4. Voer zo nodig de volgende instellingen uit:

    • Naam: geef een naam op voor de record met klantinstellingen. Dit is de naam die wordt weergegeven wanneer u inhoudsinstellingen toewijst aan een klantreis of e-mailberichtvoorbeeld.
    • Eigenaar: toont de gemachtigde Dynamics 365 Customer Insights - Journeys-gebruiker die de record heeft gemaakt.
    • Hoofdgedeelte van adres: voer het hoofdgedeelte in van het postadres van uw organisatie. Alle marketing-e-mailberichten moeten een geldig hoofdadres bevatten dat uit een record met inhoudsinstellingen wordt gehaald. Selecteer de knop De knop voor personaliseren. om persoonlijke instellingen te gebruiken om een expressie in te voeren die verwijst naar een veld uit een bestaande record (zoals een adresveld uit een specifieke accountrecord).
    • Adresregel 2: voer (indien nodig) aanvullende postadresgegevens in. Selecteer de knop De knop voor personaliseren. om persoonlijke instellingen te gebruiken om een expressie in te voeren die verwijst naar een veld uit een bestaande record (zoals een adresveld uit een specifieke accountrecord).
    • Standaard: stel deze instelling in op Ja om de huidige record met inhoudsinstellingen tot standaard te maken voor alle nieuwe klantreizen. Er moet altijd precies één standaard zijn. Als u de standaard wijzigt, wordt de bestaande standaard automatisch gewijzigd in Nee.
    • Standaardoptie voor business unit die eigenaar is: deze instelling is alleen beschikbaar als Bereikbepaling voor business units is ingeschakeld. Stel deze optie in op Ja om de huidige record voor inhoudsinstellingen de standaard te maken voor alle nieuwe klantreizen in de business unit. Er moet altijd precies één standaardinhoudsinstelling voor het bereik van de business unit zijn. Als u de standaard wijzigt, wordt de bestaande standaard automatisch gewijzigd in Nee.
    • URL van LinkedIn, URL van Twitter, URL van Facebook, URL van Instagram, URL van YouTube en URL van Google Plus: voer voor elk van deze social-mediaservices de URL voor de landingspagina van uw organisatie in.
    • Abonneecentrum: geef een bestaande marketingpagina op die wordt ingesteld als een abonneecentrum. Alle marketing-e-mailberichten moeten een geldige abonneecentrumkoppeling bevatten die uit een record met inhoudsinstellingen wordt gehaald. Selecteer de knop De knop voor personaliseren. om persoonlijke instellingen te gebruiken om een expressie in te voeren die verwijst naar het veld Volledige pagina-URL voor de specifieke pagina die u wilt gebruiken. De resulterende expressie ziet er ongeveer als volgt uit (waarbij de GUID varieert op basis van de record die u kiest met personalisatie):
      {{msdyncrm_marketingpage(3343053c-8daf-e911-a85e-000d3a3155d5).msdyncrm_full_page_url}}
    • Doorsturen naar een vriend: geef een bestaande marketingpagina op die wordt ingesteld als pagina voor doorsturen naar een vriend. Selecteer de knop De knop voor personaliseren. om een keuze te maken uit een lijst met beschikbare pagina's. Selecteer de knop De knop voor personaliseren om persoonlijke instellingen te gebruiken om een expressie in te voeren die verwijst naar het veld Volledige pagina-URL voor de specifieke pagina die u wilt gebruiken. De resulterende expressie ziet er ongeveer als volgt uit (waarbij de GUID varieert op basis van de record die u kiest met personalisatie):
      {{msdyncrm_marketingpage(36458a9e-72af-e911-a859-000d3a3159df).msdyncrm_full_page_url}}
  5. Selecteer Opslaan in de rechterbenedenhoek van het venster om uw instellingen op te slaan.

  6. Als u een record met inhoudsinstellingen bewerkt die al in gebruik is, wordt de record automatisch opnieuw gepubliceerd als u deze opslaat. Als u een nieuwe record maakt, selecteert u In gebruik nemen op de opdrachtbalk om de record te publiceren naar de marketingservices zodat u deze kunt gaan gebruiken.

Personalisatie gebruiken om dynamische veldwaarden te plaatsen

Met Personalisatie kunt u geldige dynamische expressies samenstellen voor het positioneren van contactpersoonrecords van geadresseerden, de berichtinhoudsinstellingen en andere databasewaarden. Deze knop wordt beschikbaar op de werkbalk voor tekstopmaak wanneer u een tekstelement in de grafische ontwerper selecteert. De knop wordt ook aangeboden voor bepaalde instellingsvelden, zoals het onderwerpveld, het adresveld en het naamveld van de afzender.

Notitie

Het dialoogvenster voor personalisatie toont alleen entiteiten en relaties die worden gesynchroniseerd met de Marketing Insights-service. Als u informatie wilt weergeven of relaties wilt gebruiken voor een of meer entiteiten die niet worden vermeld, vraagt u uw beheerder om de relevante entiteiten toe te voegen aan de Marketing Insights-service. Als u een beheerder bent, raadpleegt u Entiteiten kiezen voor synchronisatie met Marketing Insights-services voor instructies.

Personalisatie gebruiken om een dynamische expressie te plaatsen

Personalisatie gebruiken

  1. Plaats de cursor in het veld of het tekstelement waar u de dynamische tekst wilt invoegen en selecteer vervolgens de knop Persoonlijke instellingenDe knop voor personaliseren. Het dialoogvenster voor personalisatie wordt geopend.

    Personalisatie, pagina 1.

  2. Voer een van de volgende stappen uit:

    • Selecteer Dynamische inhoud om een waarde te plaatsen die kan veranderen op basis van de context waarin u het bericht gebruikt en kies vervolgens een van de volgende opties in de vervolgkeuzelijst:
      • Contactpersoon: hiermee plaatst u een veldwaarde, zoals een voornaam, van de contactpersoonrecord van de geadresseerde. Deze waarden verschillen per ontvanger.
      • ContentSettings: hiermee plaatst u een veldwaarde uit de inhoudsinstellingen. Waarden zoals een URL voor het abonneecentrum, een doorstuur-URL en het postadres van de afzender zijn hier beschikbaar. Deze waarden kunnen variëren, afhankelijk van de klantreis waarin het bericht wordt gebruikt.
      • FormDoiSubmission: hiermee plaatst u een dynamisch veld voor dubbele formulierinschrijving instellen. Dit veld vereist geen relatiewaarde, zoals hieronder wordt besproken.
      • Bericht: hiermee neemt u waarden op die verband houden met het bericht zelf; momenteel omvat dit de URL voor openen als webpagina en de verschillende dynamische waarden die worden gebruikt in e-mails voor inschrijving in twee stappen.
    • Selecteer Statische inhoud als u een vaste waarde uit een bepaalde record wilt opnemen (zoals de naam van een geplande gebeurtenis). Deze waarde is hetzelfde, ongeacht waar u het bericht gebruikt of wie het ontvangt. Geef vervolgens de volgende instellingen op om de entiteit en record te identificeren die de waarde bevatten die u nodig hebt:
      • Een optie selecteren (bovenste keuzelijst met invoervak): selecteer de entiteit (bijvoorbeeld de gebeurtenis of account). Als u naar een entiteit wilt zoeken, plaatst u de cursor in dit vak en typt u de naam totdat de gewenste entiteit wordt weergegeven.
      • Een record kiezen (onderste keuzelijst met invoervak): selecteer de specifieke record op naam. In deze lijst worden alle records uit de geselecteerde entiteit weergegeven. Net als bij de entiteit kunt u hier ook zoeken.
  3. Nu moet u het specifieke veld identificeren dat u wilt plaatsen. Voer een van de volgende stappen uit:

    • Selecteer Gerelateerde entiteit om een veld te zoeken in een entiteit die verwant is aan de entiteit die u op de vorige pagina hebt gekozen. Configureer vervolgens de volgende instellingen om de relatie en het veld te identificeren dat u wilt weergeven:
      • Relatie selecteren: de relatie bepaalt naar welke tweede entiteit u een hop wilt maken en de route die u volgt om er te komen. Als u naar een relatie wilt zoeken, plaatst u de cursor in dit vak en typt u de naam totdat de gewenste relatie wordt weergegeven. Selecteer deze relatie. Zie de volgende paragraafvoor meer informatie over de manier waarop relaties hier worden weergegeven.
      • Veld selecteren: kies de veldnaam die u wilt weergeven. Net als bij de relatie kunt u hier ook zoeken. Deze vervolgkeuzelijst is alleen beschikbaar als u gekozen hebt voor een N:1-relatie.
  4. Onder in het dialoogvenster ziet u nu de definitieve expressie. Selecteer Invoegen om deze expressie te plaatsen.

    Personalisatie, pagina 2.

Belangrijk

Lijsten die zijn gemaakt met for-each-lussen worden niet weergegeven in een bepaalde volgorde en zijn niet te sorteren op welk veld dan ook.

Hoe Personalisatie databaserelaties presenteert

Wanneer u een relatie selecteert in Personalisatie, worden de opties weergegeven op basis van een van de volgende naamgevingsconventies:

  • FieldName (PrimaryEntity) -> SecondaryEntity
    Wanneer de primaire entiteit tussen haakjes staat en een veldnaam weergeeft, is het een veel-op-één -relatie (N:1) die leidt tot één record van de secundaire entiteit. U moet daarom gewoonlijk de tweede vervolgkeuzelijst gebruiken om een veld te kiezen uit de secundaire entiteit die u met uw expressie wilt weergeven.
  • PrimaryEntity -> FieldName (SecondaryEntity)
    Wanneer de secundaire entiteit tussen haakjes staat en een veldnaam weergeeft, is het een één-op-veel-relatie (1:N) die kan leiden tot meerdere records van de secundaire entiteit. U kunt daarom geen veld kiezen (de tweede vervolgkeuzelijst is uitgeschakeld) en moet deze relatie daarom gebruiken in plaats van een voor/elke-lus om waarden weer te geven van elke beschikbare gerelateerde record.
  • PrimaryEntity -> SecondaryEntity
    Wanneer geen van beide entiteiten tussen haakjes staat, is het een veel-op-veel-relatie (N:N), die meerdere records in beide richtingen kan verbinden. U kunt daarom geen veld kiezen (de tweede vervolgkeuzelijst is uitgeschakeld) en u kunt deze relatie niet gebruiken voor personalisatie. Dit komt omdat de relatie wordt onderhouden door een tussenliggende entiteit en u alleen vanuit de primaire entiteit naar de tussenliggende entiteit kunt oversteken.

Waarbij geldt:

  • PrimaryEntity is een entiteit aan de startzijde van de relatie. Het wordt altijd aan de linkerkant van de pijl weergegeven. Dit is de entiteit die u hebt gekozen op de vorige pagina van het dialoogvenster Personalisatie. Een Contactpersoon (primaire entiteit) kan bijvoorbeeld worden gerelateerd aan een Account (secundaire entiteit) via het veld Bedrijfsnaam van de contactpersoon (veldnaam). Dit zou worden getoond als: Bedrijfsnaam (contact) -> Account.
  • FieldName wordt altijd weergegeven naast een entiteitnaam (die tussen haakjes staat). Dit is de naam van het veld waarmee de relatie tot stand is gebracht. Het benoemde veld hoort bij de entiteit die tussen haakjes staat en geeft een waarde weer van de entiteit aan de andere zijde van de pijl (maar bevat eigenlijk de id van de gerelateerde record waaruit de waarde afkomstig is). In sommige gevallen ziet u een relatie tussen dezelfde twee entiteiten, die elk door een ander veld stromen.
  • SecondaryEntity is de bestemming van de relatie. Het wordt altijd aan de rechterkant van de pijl weergegeven. De waarden die u met de uiteindelijke expressie weergeeft, komen uit een veld dat deel uitmaakt van de secundaire entiteit.

Notitie

Voor N:N-relaties wordt geen veldwaarde weergegeven. Dit betekent dat als u meer dan één N:N-relatie hebt tussen dezelfde twee entiteiten, u meerdere identiek ogende relaties ziet in de vervolgkeuzelijst. Deze situatie komt niet vaak voor, maar als u het ziet moet u via trial-and-error de juiste relatie identificeren. Om het te bevestigen kunt u de resulterende uitdrukking controleren om te zien of het lijkt alsof u voor de juiste relatie hebt gekozen (relaties worden hier anders weergegeven en dat kan inzichtelijk zijn) of een testbericht opzetten met beide versies van de N:N-relatie en een testklantreis versturen naar uzelf.

Hier volgen een aantal voorbeelden:

  • Bedrijfsnaam (Contactpersoon) -> Account: deze relatie wordt door de Contactpersoon gebruikt om informatie weer te geven van de entiteit Account in de record van het veld Bedrijfsnaam van een entiteit. Met andere woorden, er is een koppeling met het bedrijf (account) waarvoor de contactpersoon werkt.
  • Beherende partner (Contactpersoon) -> Account: deze relatie wordt door de Contactpersoon gebruikt om informatie weer te geven van de entiteit Account in de record van het veld Beherende partner van een entiteit. Met andere woorden, er is een koppeling met het bedrijf (account) dat als beherend partner voor een contactpersoon fungeert.
  • Contact -> Primair contact (Account): deze relatie wordt door de entiteit Account gebruikt om informatie weer te geven van de entiteit Contact in het veld Primaire contact van een accountrecord. Met andere woorden, het vindt alle contactpersonen waar de huidige contactpersoon is toegewezen als de primaire contactpersoon.
  • Contact -> Contact (Gebeurtenisregistratie): deze relatie wordt door de entiteit Gebeurtenisregistratie gebruikt om informatie weer te geven van de entiteit Contact in het veld Contact van een event-registration-record. Met andere woorden, het vindt alle gebeurtenisregistraties die door (of voor) het huidige contact worden gemaakt.

Expressies gemaakt door Personalisatie

Met Personalisatie wordt een expressie gemaakt waarvoor een notatie als de volgende wordt gebruikt:

  • {{EntityName.FieldName}}
  • {{EntityName(RecordID).FieldName}}
  • {{EntityName.RelationshipName.FieldName}}
  • {{EntityName(RecordID).RelationshipName.FieldName}}

De notatie die wordt gebruikt voor relatienamen in de resulterende expressies is niet gelijk aan de manier waarop deze worden weergegeven in het dialoogvenster voor personalisatie. Hieronder volgen een aantal voorbeelden van resulterende expressies:

  • {{contact.firstname}}
    Plaatst de voornaam van de geadresseerde.
  • {{msdyncrm_marketingpage(3343053c-8daf-e911-a85e-000d3a3155d5).msdyncrm_full_page_url}}
    Plaatst de waarde van het veld msdyncrm_full_page_url uit de marketingpaginarecord die is opgegeven door de GUID tussen haakjes. U gebruikt meestal een expressie van dit formulier in een record voor inhoudsinstellingen om een abonneecentrum of een doorsturen naar een vriend-pagina op te geven.
  • {{msdyncrm_contentsettings.msdyncrm_subscriptioncenter}}
    Neemt de URL op voor de abonneecentrumpagina die wordt geïdentificeerd in de inhoudsinstellingen die zijn geconfigureerd voor de klantreis waarmee het bericht wordt verzonden.
  • {{msdyncrm_contentsettings.msdyncrm_forwardtoafriend}}
    Plaatst de URL op de doorstuurpagina die wordt geïdentificeerd in de inhoudsinstellingen die zijn geconfigureerd voor de klantreis waarmee het bericht wordt verzonden.
  • {{Message.ViewAsWebpageURL}}
    Plaatst de URL voor het openen van het huidige bericht in een webbrowser.
  • {{msevtmgt_event(8a519395-856c-4e22-b560-650ce6d6a79d).msevtmgt_webinarurl}}
    Plaatst de webinar-URL voor de gebeurtenis die wordt aangeduid door de opgegeven gebeurtenis-id (tussen haakjes).
  • {{msdyn_survey(39128da2-c968-4627-9595-f030b6571be4).msdyn_name}}
    Plaatst de naam van het onderzoek dat wordt geïdentificeerd door de opgegeven onderzoeks-id (tussen haakjes).
  • {{contact.contact_account_parentcustomerid.name}}
    Met deze expressie wordt de naam gezocht van het account voor het bedrijf waar een contactpersoon werkt.
  • {{contact.contact_account_msa_managingpartnerid.name}}
    Met deze expressie wordt de naam gezocht van de beherende partner voor het bedrijf waar een contactpersoon werkt.

Zodra u een expressie hebt die werkt, kunt u het overal naartoe kopiëren en plakken. U hoeft niet elke keer Personalisatie te gebruiken.

Belangrijk

U kunt maximaal twee hops (punten) gebruiken in uw veldexpressies. Probeer niet meer complexe expressies te maken door meer hops toe te voegen aan de expressies die met Personalisatie worden geproduceerd.

Tip

Als u de typen gegevens nodig hebt die worden ondersteund door Personalisatie, kunt u gewoonlijk het beste de functie Personalisatie gebruiken om de code te plaatsen in plaats van de code helemaal vanaf niets uit te schrijven. Dit zorgt ervoor dat de entiteit-, relatie- en veldnamen overeenkomen met de namen in de database, terwijl het u bovendien helpt spelfouten te vermijden.

Opmerking

De functionaliteit voor het verzenden van e-mail vanuit Dynamics 365 Customer Insights - Journeys biedt geen ondersteuning voor berekende velden.

Dynamische waarden in de velden Aan, Van naam, Van-adres en Beantwoorden

Op het tabblad Samenvatting van het formulier Marketing-e-mail kunt u verschillende instellingen die niet aan de inhoud zijn gerelateerd uitvoeren voor uw bericht in de sectie Zender en ontvanger. Dit omvat waarden en expressies voor het vaststellen van de waarden voor Aan, Van naam, Van-adres en Beantwoorden die in het bericht zullen worden gebruikt.

instellingen voor afzender en ontvanger voor e-mail berichten.

Een typische manier om te profiteren van deze functie is het instellen van de Van-naam en het Van-adres van de eigenaar van het contactpersoonrecord. Dan, door het toewijzen van de eigenaar van elke contactpersoon aan de verkoper die dat contactpersoon beheert, zullen de ontvangers marketing-e-mails ontvangen van het adres van iemand die ze misschien kennen en dat kan tarieven flink verhogen. U doet dit als volgt:

  1. Als uw exemplaar van Customer Insights - Journeys nog niet zo is ingesteld dat de entiteit Gebruiker (systeemgebruiker) wordt gesynchroniseerd met de Marketing Insights-service, vraag uw beheerder dan om dit als volgt in te stellen: Als u de beheerder bent, raadpleegt u Entiteiten kiezen voor synchronisatie met Marketing Insights-services voor instructies.
  2. Open uw e-mailbericht en ga naar het tabblad Samenvatting.
  3. Verwijder de inhoud van het veld Naam van afzender en selecteer de knop PersonalisatieDe knop voor personaliseren naast dit veld.
  4. Selecteer Contextueel en stel dit in op Contactpersoon op de eerste pagina van het dialoogvenster Personalisatie. Selecteer dan Volgende.
  5. Selecteer Gerelateerde entiteit op de tweede pagina van het dialoogvenster Personalisatie. Doe vervolgens het volgende:
    • Stel de bovenste vervolgkeuzelijst (relatie) in op Eigenaar gebruiker (Contactpersoon) -> Gebruiker.
    • Stel de onderste vervolgkeuzelijst (veld) in op Volledige naam.
  6. Selecteer OK om de expressie te plaatsen. Die moet zijn: {{contact.contact_systemuser_owninguser.fullname}}.
  7. Verwijder de inhoud van het veld Adres van afzender en selecteer de knop PersonalisatieDe knop voor personaliseren naast dit veld.
  8. Selecteer Contextueel en stel dit in op Contactpersoon op de eerste pagina van het dialoogvenster Personalisatie. Selecteer dan Volgende.
  9. Selecteer Gerelateerde entiteit op de tweede pagina van het dialoogvenster Personalisatie. Doe vervolgens het volgende:
    • Stel de bovenste vervolgkeuzelijst (relatie) in op Eigenaar gebruiker (Contactpersoon) -> Gebruiker.
    • Stel de onderste vervolgkeuzelijst (veld) in op Primair e-mailadres.
  10. Selecteer OK om de expressie te plaatsen. Die moet zijn: {{contact.contact_systemuser_owninguser.internalemailaddress}}.

U kunt vergelijkbare technieken gebruiken om de naam of het e-mail adres van de eigenaar te plaatsen in de inhoud van het bericht. U dit doen met behulp van Adres afzender of door de Handlebar-uitdrukkingen te kopiëren/plakken of zelfs handmatig te typen.

U kunt een dynamische expressie gebruiken om de bron-URL voor afbeeldingselementen te definiëren. Om dit te doen, selecteert u het afbeeldingselement, gaat u naar het paneel Eigenschappen en selecteert u vervolgens de knop PersonalisatieDe knop voor personaliseren naast het veld Bron om dynamische tekst te plaatsen als onderdeel van de URL. U zult dit meestal mengen met statische tekst om een volledige URL te assembleren. Zo kunt u bijvoorbeeld de contactpersoon-id of bedrijfsnaam van de geadresseerde opnemen om een afbeelding te selecteren die relevant is voor elke afzonderlijke geadresseerde.

U kunt ook Personalisatie gebruiken om een dynamische expressie te maken waarmee u een bestemming Koppeling voor de afbeelding instelt.

Opmerking

De bestandenbibliotheek voor Dynamics 365 Customer Insights - Journeys genereert een uniek op GUID gebaseerd bestandspad voor elke afbeelding die u uploadt, wat betekent dat de afbeeldingen in de bestandenbibliotheek onvoorspelbare URL's bevatten die niet de oorspronkelijke bestandsnaam hebben. Om de hier beschreven techniek te gebruiken, moet u daarom uw afbeeldingen hosten op uw eigen website of een externe hostingservice waar de URL's voorspelbaar zijn en een waarde kunnen bevatten die u gemakkelijk extraheren uit een Dynamics 365-veld.

Record-id's zoeken

De niet-contextuele veldexpressies (die gebruikmaken van het formulier {{EntityName(RecordID).FieldName}}) vereisen een record-id om de specifieke record te identificeren waarvan de waarde afkomstig moet zijn. Meestal helpt Personalisatie u bij het vinden van deze id's, maar soms moet u een id handmatig zoeken terwijl u dynamische functies voor een bericht ontwerpt. U kunt als volgt de id van een record zoeken:

  1. Open de record waarnaar u wilt verwijzen.
  2. Bekijk de URL die wordt weergegeven in de adresbalk van de browser. Deze zou er ongeveer als volgt moeten uitzien:
    https://<MyOrg>.crm.dynamics.com/main.aspx?appid=c8cba597-4754-e811-a859-000d3a1be1a3&pagetype=entityrecord&etn=msevtmgt_event&id=5acc43d5-356e-e811-a960-000d3a1cae35
  3. Zoek het gedeelte van de URL dat begint met &id=, gevolgd door het id-nummer van uw huidige record. Kopieer dat nummer (alleen de waarde) en gebruik het in uw expressie.

Geavanceerde dynamische inhoud

U kunt geavanceerde logische verwerking toevoegen aan uw e-mailontwerpen, waardoor de inhoud voor geadresseerden, demografische gegevens en context nog responsiever wordt. Voor dit type aanpassing moet u over fundamentele kennis van het vervaardigen van scripts en programmeren beschikken.

Zoals u hebt kunnen zien in de eerdere voorbeelden, wordt dynamische inhoud omgeven door dubbele accolades ({{ en }}). Dit omvat zowel standaardveldwaarden die u toevoegt met de functie voor personalisatie als de meer geavanceerde programmeringsconstructies die in deze sectie worden beschreven.

Tip

Als u dubbele accolades wilt weergeven in een bericht in plaats van deze te gebruiken om het begin of einde van een codeblok aan te geven, laat u de eerste accolade voorafgaan door een backslash, bijvoorbeeld \{{ of \}}. De slashes zullen niet te zien zijn in uw definitieve weergegeven bericht, maar de dubbele accolades wel.

Voorwaardelijke instructies en vergelijkingen

Met voorwaardelijk instructies (if-then-else) wordt inhoud weergegeven afhankelijk van of een of meer voorwaardelijke expressies worden opgelost als waar of onwaar. U kunt de code toevoegen die nodig is om deze instructies te maken door deze in een tekstelement te plaatsen of door aangepaste-code-elementen tussen de andere ontwerpelementen te plaatsen. Meer informatie: Procedure voor het invoeren van geavanceerde dynamische inhoud in de ontwerpfunctie

Voorwaardelijke instructies hebben de volgende indeling:

{{#if (<operator> <value1> <value2>)}}
   Content displayed when the expression is true
{{else if (<operator> <value1> <value2>)}}
   Content displayed when the first expression is false and the second one is true
.
.
.
{{else}}
   Content displayed when all expressions are false
{{/if}}

Waarbij geldt:

  • Het voorwaardelijke blok moet altijd beginnen met {{#if … }}.
  • Voorwaardelijke expressies moeten tussen haakjes staan.
  • Voorwaardelijke expressies beginnen met een <operator>. Dit moet een van de waarden zijn in de volgende tabel. Hiermee wordt bepaald hoe de eerste waarde met de tweede waarde moet worden vergeleken.
  • <value1> en <value2> zijn waarden die door de voorwaardelijke expressie moeten worden vergeleken, en beide kunnen dynamische of constante waarden zijn. Als <waarde1> of <waarde2> een constante tekenreekswaarde (geen getal of expressie) is, moet deze tussen enkele aanhalingstekens (') worden gezet voor reële getallen, waar een punt (.) wordt gebruikt als scheidingsteken voor decimalen.
  • Als <waarde1> een Booleaans veld is (ook wel een veld met twee opties in Dynamics 365 genoemd), neem dan geen <operator>, <waarde2> of de haakjes op. Booleaanse velden hebben altijd de waarde waar of onwaar, dus u moet ze gewoon rechtstreeks gebruiken om de voorwaarde vast te stellen, zoals: {{#if contact.is_vip}}.
  • De componenten {{else}} en {{else if … }} zijn optioneel.
  • Het voorwaardelijke blok moet altijd worden afgesloten met {{/if}}.

De onderstaande tabel bevat alle operators die u in uw voorwaardelijke expressies kunt gebruiken. Andere operatoren zijn op dit moment niet beschikbaar en u kunt ook geen complexe booleaanse expressies (zoals met AND- of OR-operators) gebruiken in uw voorwaardelijke expressies.

Dynamics 365 Customer Insights - Journeys-syntaxis (hoofdlettergevoelig) Operator
eq Gelijk aan
ne Niet gelijk aan
lt Kleiner dan
gt Groter dan
lte Kleiner dan of gelijk aan
gte Groter dan of gelijk aan

Zo zou met deze voorwaardelijke instructie kunnen worden vastgesteld welke taal wordt gebruikt in de aanhef van een bericht op basis van het land van elke geadresseerde:

<p>{{#if (eq contact.address1_country 'Denmark')}}
    Hej
{{else if (eq contact.address1_country 'US')}}
    Hi
{{/if}} {{contact.firstname}}!</p>

Hier is een voorbeeld van een voorwaardelijke instructie op basis van een Booleaans (twee opties) veld genaamd is_vip. Omdat Booleaanse velden altijd de waarde True of False teruggeven, wordt er geen operator, vergelijkingswaarde of haakjes opgenomen in de voorwaarde:

<!-- {{#if contact.is_vip}} -->
    <h3>Be sure to show your VIP card to receive a 20% discount!</h3>
<!-- {{/if}} -->

Tip

U kunt testen op lege veldwaarden door gebruik te maken van:

{{#if (eq contact.lastname '')}}

Waarbij '' twee afzonderlijke enkele aanhalingstekens zijn, geen dubbel aanhalingsteken. Hiermee worden lege velden gevonden, maar geen null-velden.

Tip

Hoewel u geen complexe Boole-expressies kunt gebruiken in uw voorwaardelijke expressies, kunt u wel als volgt vergelijkbare functionaliteit implementeren:

Niet ondersteund:

{{#if A and B}}<DisplayedContent>{{/if}

Is equivalent aan (ondersteund):

{{#if A}}{{#if B}}<DisplayedContent>{{/if}}{{/if}}

 
Niet ondersteund:

{{#if A or B}}<DisplayedContent>{{/if}

Is equivalent aan (ondersteund):

{{#if A}}<DisplayedContent>{{/if}} {{#if B}}<DisplayedContent>{{/if}}

Tip

Wanneer u test op waarden die zijn opgeslagen als een optieset in de database, gebruikt u de indexwaarden voor de optieset en niet de weergavewaarden. U kunt bijvoorbeeld een veld genaamd contact.customertypecode hebben dat een geheel getal bevat om het type klant te identificeren. Elke klanttypecode heeft ook een weergavenaam, bijvoorbeeld 0 = "koper", 1 = "zilver" en 2 = "goud". In dit geval moet u de expressie zo instellen dat de index (geheel getal) wordt gebruikt en niet de overeenkomende weergavewaarde. Als u klanten van het type Goud zoekt, moet u dus het volgende gebruiken:

{{#if (eq contact.customertypecode 2)}}

Tip

Wanneer u grote numerieke waarden test, zoals 1.932.333, laat u het scheidingsteken voor duizendtallen (.) in de vergelijkingsinstructie weg, ook al ziet u deze mogelijk vaak in de UI. Als u wilt testen op deze waarde, moet uw expressie er dus ongeveer als volgt uitzien:

{{#if (eq contact.customernumber 1932333)}}

For-each-lussen

Met for-each-lussen kunt u stapsgewijs een verzameling records doorlopen die aan een specifieke record zijn gerelateerd, bijvoorbeeld om een lijst weer te geven van alle recente transacties die aan een specifieke contactpersoon zijn gekoppeld. U kunt de code toevoegen die nodig is om deze instructies te maken door deze in een tekstelement te plaatsen of door aangepaste-code-elementen tussen de andere ontwerpelementen te plaatsen. Meer informatie: Procedure voor het invoeren van geavanceerde dynamische inhoud in de ontwerpfunctie

For-each-lussen hebben de volgende indeling:

{{#each Entity.RelationshipName }}
   ...
   {{this.RelatedField1}}
   ...
   {{this.RelatedField2}}
   ...
{{/each}}

Waarbij geldt:

  • Het lusblok moet altijd beginnen met {{#each … }}.
  • Entity.RelationshipName identificeert de set gerelateerde records die door de lus worden doorlopen.
  • De lus begin met de eerste beschikbare gerelateerde record en wordt herhaald voor elke beschikbare gerelateerde record totdat alle gerelateerde records zijn opgesomd. Houd er rekening mee dat de gerelateerde records in een willekeurige en onvoorspelbare volgorde worden geretourneerd.
  • {{this.RelatedField<n>}} identificeert een veldnaam uit de gerelateerde record. Het "this"-onderdeel van deze expressie verwijst naar de gerelateerde record die in de huidige lusiteratie wordt verwerkt en moet worden gevolgd door een geldige veldnaam voor de gerelateerde entiteit. U kunt een willekeurig aantal velden opnemen in elke lus.
  • Het lusblok moet altijd worden afgesloten met {{/each}}.

Zo kan bijvoorbeeld uw database een lijst met producten bevatten die door een contactpersoon zijn besteld. U kunt deze opsommen in een e-mailbericht met code als:

<p>You have purchased:</p>
<ul>
<!-- {{#each contact.contact_product_productid}} -->
<li>{{this.name}}</li>
<!-- {{/each}} -->
</ul>

In dit voorbeeld is het Dynamics 365 Customer Insights - Journeys-systeem aangepast om een aangepaste entiteit genaamd product op te nemen, die wordt ingesteld met een 1:N-relatie tussen de entiteiten contactpersoon en product in het veld productid. Om de productentiteit beschikbaar te maken in uw e-mailbericht, moet deze tevens gesynchroniseerd zijn met de database van Marketing Insights (zoals gebruikelijk).

Belangrijk

Alleen de eerste 1000 gerelateerde items worden aan de relatie toegevoegd voor e-mailweergavedoeleinden. Het gebruik van relaties met meer dan 1000 items wordt niet ondersteund in e-mailsjablonen en kan tot onverwachte resultaten leiden.

Houd er ook rekening mee dat relaties op het tweede niveau niet worden ondersteund. Daarom is de volgende syntaxis niet toegestaan:

{{#each Entity.RelationshipOnEntity}} 
    ... 
    {{#each this.RelationshipOnRelatedEntity}}
        ...
    {{/each}}
    ... 
{{/each}}

Procedure voor het invoeren van geavanceerde dynamische inhoud in de ontwerpfunctie

U moet zorgvuldig te werk gaan bij het invoeren van geavanceerde dynamische code in de ontwerpfunctie omdat dit op vele, soms onverwachte, manieren mis kan gaan, waardoor uw code niet meer werkt. Hier volgen enkele tips voor het invoeren en testen van uw code:

  • Gebruik aangepaste-code-elementen om codefragmenten tussen ontwerpelementen op het tabblad Ontwerper te plaatsen. Dit is veel zichtbaarder en betrouwbaarder dan de code rechtstreeks in de HTML plaatsen via het tabblad HTML. U kunt echter ook dynamische code in een tekstelement gebruiken, in welk geval u deze code waarschijnlijk moet opschonen op het tabblad HTML, zoals verderop in deze lijst wordt vermeld. (Wanneer u werkt in de editor voor volledige pagina, selecteert u een aangepaste-code-element om de inhoud ervan te bewerken.)
    Het aangepaste-code-element.
  • Als u op het tabblad Ontwerper code invoert in een tekstelement, zorgen extra spaties en regeleinden ervoor dat de codes &nbsp; en <p> in uw code worden opgenomen, die daardoor mogelijk niet meer werkt. Ga altijd achteraf naar het tabblad HTML, waar u al deze extra codes kunt zien, en verwijder deze vervolgens.
  • Als u code invoert in een tekstelement, moet al uw code voor dynamische inhoud worden opgenomen in een reeks begin- en eindcodes (zoals <p> en </p>) of binnen een HTML-opmerking (voor code die volledig is gescheiden van weergegeven tekst). Plaats geen code buiten opmerkingen of geldige HTML-codeparen (of aangepaste-code-elementen), aangezien dit de editor verwart (met name als u schakelt tussen de tabbladen HTML en Ontwerp ). U moet op het tabblad HTML werken om de HTML binnen uw tekstelementen te inspecteren en te corrigeren.
  • Plaats geen regeleinden tussen code-elementen die deel uitmaken van dezelfde expressie (bijvoorbeeld bij een for-each-lus) tenzij u elke regel insluit in zijn eigen reeks van HTML-codes (zoals aangegeven in het voorbeeld van de for-each-lus dat na deze lijst volgt.)
  • De functie voor personalisatie is vaak handig voor het construeren van expressies waarmee waarden uit de database worden opgehaald, omdat u hiermee databasetabel-, veld- en relatienamen kunt vinden. Dit hulpmiddel is beschikbaar wanneer u in een tekstelement op het tabblad Ontwerper werkt en wanneer u waarden invoert in bepaalde velden die dit ondersteunen (zoals het e-mailonderwerp). Personalisatie is niet beschikbaar wanneer u werkt op het tabblad HTML of in een aangepaste-code-element. Gebruik Personalisatie dus in een tekstelement en knip of plak de resulterende expressie in uw aangepaste-code-element of HTML.
  • De relatienaam die u bij het maken van lussen of het plaatsen van opzoekwaarden gebruikt, moet overeenkomen met de relatienaam in de Marketing Insights-service. Deze relatienaam is niet noodzakelijkerwijs gelijk aan de naam die is gebruikt voor het aanpassen van Dynamics 365. Gebruik de functie voor personalisatie om de juiste relatienaam te vinden.

Zo kunt u de regel voor de aanhef van een e-mailbericht instellen door het volgende op te geven op het tabblad HTML van de ontwerpfunctie (in of buiten een tekstelement):

<p>{{#if (eq contact.address1_country 'Denmark')}}Hej{{else if (eq contact.address1_country 'US')}}Hi{{/if}}{{contact.firstname}}!</p>

Dit voorbeeld (zoals eerder weergegeven) toont hoe u opmerkingen kunt gebruiken om code in te sluiten die zich volledig buiten weergegeven inhoud bevindt (ook op het tabblad HTML):

<p>You have purchased:</p>
<ul>
<!-- {{#each contact.contact_product_productid}} -->
<li>{{this.name}}</li>
<!-- {{/each}} -->
</ul>