Споделяне чрез


Добавяне на динамично съдържание към имейл съобщения

Съвет

Ако искате да опитате Dynamics 365 Customer Insights безплатно, можете да се регистрирате за 30-дневен пробен период.

Важно

Тази статия се отнася само за изходящия маркетинг.

Динамичното съдържание се разрешава точно преди дадено съобщение да бъде изпратено на конкретно лице. Обикновено динамичното съдържание се използва за сливане на информация от записа на контакт на получател (като например собствено и фамилно име), за поставяне на специални връзки и за поставяне на информация и връзки от настройките на съдържанието. Ако умеете да работите в код, можете също да създадете персонализирана логика, която включва условни преходи, цикли for-each и др. Можете да използвате динамично съдържание където и да е в основния текст на съобщението, както и да използвате няколко типа динамични стойности в полетата на заглавката (тема, адрес на подател и име на подател) на съобщението.

Използване на настройките на съдържанието за настройване на хранилища със стандартни и задължителни стойности за имейл съобщения

Настройките на съдържание са стандартни набори и изискват стойности, които са налични за използване в маркетинговите имейл съобщения. Всеки от тях включва връзка към абонаментен център, връзка за препращане към приятел, връзки в социалните медии, пощенския ви адрес и друга информация, която може да бъде поставена в съобщението като динамични стойности с помощта на функцията за персонализиране .

Dynamics 365 Customer Insights - Journeys се доставя с един запис по подразбиране за настройки на съдържанието, който е предварително конфигуриран да използва центъра за абонаменти по подразбиране (също включен извън кутията). Можете да персонализирате този запис според нуждите и освен това можете да създавате допълнителни записи. Всяко пътешествие на клиента се настройва да използва конкретен запис на настройки на съдържанието, което означава, че всички съобщения, изпращани от това пътешествие, ще използват един и същи запис. Всяко пътешествие обаче може да използва различен запис, което означава, че можете да използвате идентичен проект на маркетингов имейл в две или повече пътешествия на клиента, всеки от които указва различен запис с настройки на съдържанието. Ако имате повече от един записи с настройки на съдържание, точно един от тях ще бъде по подразбиране и ще се прилага автоматично за всяко пътешествие на клиента, създадено от вас.

Стойностите на настройките на съдържание най-напред се оценяват към момента на изпращане, което означава, че можете да редактирате запис с настройки на съдържание по всяко време и всички чакащи и бъдещи имейл съобщения автоматично ще използват последните стойности.

Всеки запис на настройки на съдържание, който използвате, трябва да е достъпен за външните маркетингови услуги, които управляват асемблирането и доставката на имейлите. Затова трябва да публикувате вашите записи за настройки на съдържанието, като изберете Go Live всеки път, когато създавате нов.

Бележка

Ако имате други видове стойности, които често използвате в имейл съобщения и/или искате да управлявате на ниво пътешествие на клиента, можете да ги добавите като потребителски полета към обекта с настройки на съдържанието, точно както можете за други типове обекти в Dynamics 365. В текущото издание обаче всички потребителски полета за обекта на настройките на съдържанието трябва да бъдат от типа текст (низ). Повече информация: Персонализиране Customer Insights - Journeys

За преглед, редактиране или създаване на запис с настройки на съдържание:

  1. Отидете на Изходящ маркетинг>Маркетингови шаблони>Настройки на съдържанието.

  2. Отваря се стандартна страница със списък, където можете да преглеждате, сортирате, търсите и филтрирате списъка, за да намерите конкретен запис, и да използвате бутоните в лентата с команди, за да добавяте или премахвате запис. Изберете запис, за да го отворите за редактиране, или изберете Нов в командната лента, за да създадете нов.

  3. Отваря се формулярът Настройки на съдържанието. Ако редактирате запис, който вече е активен, трябва да изберете Редактиране в командната лента, преди да можете да го редактирате. Ако създавате нов, можете просто да започнете да попълвате полетата.

    Формулярът за настройки на съдържанието.

  4. Извършете следните настройки според нуждите:

    • Име: Въведете име за записа за настройките на клиента. Това е името, което се показва, когато присвоявате настройките на съдържание на пътешествие на клиента или визуализация на имейл съобщение.
    • Собственик: Показва Dynamics 365 Customer Insights - Journeys потребителя, който е създал записа.
    • Основен адрес: Въведете основната част от пощенския адрес на вашата организация. Всички маркетингови имейл съобщения трябва да включват валиден основен адрес, взет от запис с настройки на съдържание. Изберете бутона Бутонът за персонализиране., за да използвате персонализиране , за да въведете израз, който препраща към поле от съществуващ запис (например адресно поле от конкретен запис на партньор).
    • Адресен ред 2: Въведете допълнителна информация за пощенския адрес (ако е необходимо). Изберете бутона Бутонът за персонализиране., за да използвате персонализиране , за да въведете израз, който препраща към поле от съществуващ запис (например адресно поле от конкретен запис на партньор).
    • По подразбиране: Задайте Да , за да накарате текущите настройки на съдържанието да записват по подразбиране за всички нови пътувания на клиентите. Винаги трябва да има точно едно неизпълнение; ако промените настройката по подразбиране, съществуващата по подразбиране автоматично ще бъде променена на "Не".
    • По подразбиране за притежаване на стопанска единица: Тази настройка е налична само когато е разрешен обхватът на бизнес единицата. Задайте това на Да , за да накарате текущите настройки на съдържанието да се записват по подразбиране за всички нови пътувания на клиенти в рамките на бизнес единицата. Винаги трябва да има точно една настройка на съдържанието по подразбиране за обхвата на филиала; ако промените настройката по подразбиране, съществуващата по подразбиране автоматично ще бъде променена на "Не".
    • LinkedIn URL, Twitter URL,Facebook URL, Instagram URL,YouTube URL и Google Plus URL: За всяка от тези социални медийни услуги въведете URL адреса за целевата страница за вашата организация.
    • Център за абонаменти: Задайте съществуваща маркетингова страница, която е зададена като център за абонаменти. Всички маркетингови имейл съобщения трябва да включват валидна връзка към абонаментен център, взета от запис с настройки на съдържание. Изберете бутона Бутонът за персонализиране., за да използвате персонализиране , за да въведете израз, който препраща към полето URL адрес на цяла страница за конкретната страница, която искате да използвате. Полученият израз изглежда по следния начин (където GUID варира в зависимост от записа, който сте избрали с помощта на персонализация):
      {{msdyncrm_marketingpage(3343053c-8daf-e911-a85e-000d3a3155d5).msdyncrm_full_page_url}}
    • Препращане към приятел: Задайте съществуващ маркетингова страница, който се записва като страница "Препращане към приятел". Изберете бутона, Бутонът за персонализиране. за да изберете от списък с налични страници. Изберете бутона Бутонът за персонализиране, за да използвате персонализиране , за да въведете израз, който препраща към полето URL адрес на цяла страница за конкретната страница, която искате да използвате. Полученият израз изглежда по следния начин (където GUID варира в зависимост от записа, който сте избрали с помощта на персонализация):
      {{msdyncrm_marketingpage(36458a9e-72af-e911-a859-000d3a3159df).msdyncrm_full_page_url}}
  5. Изберете Запиши в долния десен ъгъл на прозореца, за да запазите настройките си.

  6. Ако редактирате запис с настройки на съдържание, който вече е бил на живо, записът се препубликува автоматично, когато го запишете. Ако създавате нов запис, изберете Go live в командната лента, за да го публикувате в маркетинговите услуги, така че да можете да започнете да го използвате.

Използване на персонализиране за поставяне на динамични стойности на полета

Персонализирането ви помага да конструирате валидни динамични изрази, за да позиционирате стойностите на полетата от записите на контактите на получателите, настройките на съдържанието на съобщението и други стойности на базата данни. Този бутон се показва в лентата с инструменти за форматиране на текст, когато изберете елемент тип текст в графичния дизайнер. Бутонът се показва също за някои полета за настройки, като например тема, адрес на подател и име на подател.

Бележка

Диалоговият прозорец за персонализиране показва само обекти и отношения, които са синхронизирани с услугата за маркетингови прозрения. Ако трябва да покажете информация или да използвате релации за един или повече обекти, които не са изброени, тогава помолете администратора си да добави съответните обекти към услугата Marketing Insights. Ако сте администратор, вижте Избор на обекти за синхронизиране с услугата за маркетингови прозрения за инструкции.

Използване на персонализация за поставяне на динамичен израз

За да използвате персонализиране:

  1. Позиционирайте курсора в полето или текстовия елемент там, където искате да вмъкнете динамичния текст, и след това изберете бутона Персонализиране Бутонът за персонализиране. Отваря се диалоговият прозорец за персонализиране.

    Персонализация, страница 1.

  2. Изпълнете едно от следните действия:

    • Изберете Динамично съдържание , за да поставите стойност, която може да се променя въз основа на контекста, в който използвате съобщението, и след това изберете едно от следните неща от падащия списък тук:
      • Контакт: Поставя стойност на поле, например собствено име, от записа на контакта на получателя. Тези стойности варират по получател.
      • Настройки на съдържанието: Поставя стойност на поле от настройките на съдържанието. Стойности, като например URL адрес на абонамент център, URL адрес за препращане и пощенски адрес на подателя, са достъпни тук. Тези стойности могат да варират според пътешествието на клиента, когато се използва съобщението.
      • FormDoiSubmission: Поставя динамично поле за двойно включване на формуляр. Това поле не изисква стойност на релация, както е обсъдено по-долу.
      • Съобщение: Поставя стойности, които се отнасят до самото съобщение; в момента това включва URL адреса на отворената като уеб страница и различните динамични стойности, използвани в имейлите с двойно включване.
    • Изберете Статично съдържание , за да поставите фиксирана стойност от конкретен запис (например името на предстоящо събитие). Тази стойност е същата, независимо от мястото, където можете да използвате съобщението или кой го получава. След това направете следните настройки, за да идентифицирате обекта и записа, съдържащ стойността, от която се нуждаете:
      • Изберете опция (най-горния разгъващ се списък): Изберете обекта (например събитие или акаунт). За да търсите даден обект, поставете курсора в това поле и започнете да въвеждате името му, докато желаният обект се покаже.
      • Изберете запис (долен падащ списък): Изберете конкретния запис по име. Този списък показва всички записи от избрания обект. Както при обекта можете също да търсите тук.
  3. Сега трябва да идентифицирате конкретното поле, което искате да поставите. Изпълнете едно от следните действия:

    • Изберете Свързан обект , за да намерите поле от обект, който е свързан с този, който сте избрали на предишната страница. След това направете следните настройки, за да идентифицирате релацията и полето, което искате да покажете:
      • Изберете релация: Релацията определя към кой втори обект искате да прескочите и пътя, по който ще поемете, за да стигнете до там. За да търсите релация, поставете курсора в това поле и започнете да въвеждате името й, докато желаната релация се покаже, след което я изберете. За повече информация как да разберете начина, по който са представени релациите тук, вижте следващия раздел.
      • Изберете поле: Изберете името на полето, което искате да покажете. Както при релацията можете също да търсите тук. Този падащ списък е наличен само ако сте избрали релация N:1.
  4. В долната част на диалоговия прозорец сега виждате окончателния израз. Изберете Вмъкване , за да поставите този израз.

    Персонализация, страница 2.

Важно

Списъците, създадени с помощта на цикли за всеки ред, не се изобразяват в определен ред и не могат да се сортират по никое поле.

Как персонализацията представя релациите между базите данни

Когато избирате релация в персонализирането, опциите се показват с помощта на една от следните конвенции за именуване:

  • Име на поле (първичен обект) -> Вторичен обект
    Когато основният обект е в скоби и показва име на поле, това е релация "много към едно " (N:1), която води до единичен запис от вторичния обект. Затова обикновено трябва да използвате втория падащ списък, за да изберете поле от вторичния обект, което да се показва с вашия израз.
  • Първичен обект -> Име на поле (Вторичен обект)
    Когато вторичният обект е в скоби и показва име на поле, това е релация "един към много " (1:N), която може да доведе до множество записи от вторичния обект. Следователно не можете да изберете поле (вторият падащ списък е забранен) и вместо това трябва да използвате тази връзка като част от цикъл for/each за показване на стойности от всеки наличен свързан запис.
  • Първичен обект -> вторичен обект
    Когато нито един обект не е в скоби, това е релация "много към много " (N:N), която може да свързва множество записи в двете посоки. Следователно не можете да изберете поле (вторият падащ списък е забранен) и не можете да използвате тази релация за персонализиране. Това е така, защото релацията се поддържа от междинен обект и можете да преминавате само към междинната единица от главния обект.

Където:

  • PrimaryEntity е обект в началната страна на релацията. Винаги се показва от лявата страна на стрелката. Това е обектът, който сте избрали на предишната страница на диалоговия прозорец за персонализиране. Например Контакт (основен обект) може да бъде свързан с Партньор (второстепенен обект) чрез полето Име на фирмата на контакта (име на поле); това ще бъде показано като: Име на фирма (Контакт) -> Акаунт.
  • FieldName винаги се показва до име на обект (което е в скоби). Това е името на полето, чрез което се установява релацията. Наименуваното поле принадлежи на обекта в скоби и показва стойност от обекта от другата страна на стрелката (но всъщност съдържа ИД на съответния запис, от който се извлича стойността). В някои случаи, ще забележите връзка между същите два обекта, всеки от които преминава през различно поле.
  • Вторичният обект е местоназначението на релацията. Винаги се показва от дясната страна на стрелката. Стойностите, които показвате с крайния израз, ще идват от поле, принадлежащо на вторичния обект.

Бележка

За релации N:N не се показва стойност на полето. Това означава, че ако имате повече от една релации N:N между едни и същи обекти, ще видите множество идентично изглеждащи релации в падащия списък. Тази ситуация е много рядка, но ако я видите, ще трябва да използвате проба-грешка, за да идентифицирате правилната релация за използване. За да потвърдите, можете да проверите получения израз , за да видите дали изглежда, че сте избрали правилната връзка (отношенията са показани по различен начин тук и може да предоставят улика) или да настроите тестово съобщение, което включва и двете версии на връзката N:N, и да използвате тестово пътешествие на клиента, за да го предадете на себе си.

Ето някои примери:

  • Име на фирма (контакт) -> Партньор: Тази релация се използва от обекта за контакт за показване на информация от обекта на партньор в полето Име на фирма на запис на контакт. С други думи тя свързва фирмата (клиент), за която работи контактът.
  • Управляващ партньор (контакт) –> Партньор: Тази релация се използва от обекта за контакт за показване наинформация от обекта на партньор в полето Управляващ партньор на запис на контакт. С други думи тя свързва фирмата (клиент), която управлява партньора за контакт.
  • Контакт -> Основен контакт (Партньор): Тази релация се използва от обекта Партньор за показване на информация от обекта Контакт в полето Основен контакт на запис на партньор. С други думи, той намира всички клиенти, в които текущият контакт е определен като основен контакт.
  • Контакт -> Контакт (Регистрация на събитие): Тази релация се използва от обекта за регистрация на събитие за показване на информация от обекта за контакт в полето за контакт на запис за регистрация на събитие. С други думи, той намира всички регистрации на събития, направени от (или за) текущия контакт.

Изрази, създадени чрез персонализиране

Персонализирането създава израз, който използва формат като следния:

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

Обърнете внимание, че нотацията, използвана за имена на релации в получените изрази, не съответства на начина, по който са представени в диалоговия прозорец за персонализиране. Ето някои примери за получени изрази:

  • {{contact.firstname}}
    Поставя собственото име на получателя.
  • {{msdyncrm_marketingpage(3343053c-8daf-e911-a85e-000d3a3155d5).msdyncrm_full_page_url}}
    Поставя стойността на msdyncrm_full_page_url полето от маркетингова страница запис, зададен от GUID, в скоби. Обикновено можете да използвате израз на този формуляр в запис на настройки на съдържание, за да зададете център за абонаменти или страница за препращане към приятел.
  • {{msdyncrm_contentsettings.msdyncrm_subscriptioncenter}}
    Поставя URL адреса за страницата на центъра за абонаменти, идентифициран в настройките на съдържанието, конфигурирани за пътешествие на клиента, който изпраща съобщението.
  • {{msdyncrm_contentsettings.msdyncrm_forwardtoafriend}}
    Поставя URL адреса на страницата за препращане, идентифицирана в настройките на съдържанието, конфигурирани за пътешествие на клиента, който изпраща съобщението.
  • {{Message.ViewAsWebpageURL}}
    Поставя URL адреса за отваряне на текущото съобщение в уеб браузър.
  • {{msevtmgt_event(8a519395-856c-4e22-b560-650ce6d6a79d).msevtmgt_webinarurl}}
    Поставя URL адреса на уебинар за събитието, идентифицирано от указания идентификатор на събитието (в скоби).
  • {{msdyn_survey(39128da2-c968-4627-9595-f030b6571be4).msdyn_name}}
    Поставя името на проучването, идентифицирано от указания идентификатор на проучването (в скоби).
  • {{contact.contact_account_parentcustomerid.name}}
    Този израз намира името на акаунта за компанията, в която работи даден контакт.
  • {{contact.contact_account_msa_managingpartnerid.name}}
    Този израз намира името на управляващия партньор за акаунта за компанията, в която работи даден контакт.

След като имате израз, който работи, можете да го копирате и поставите навсякъде. Не е нужно да използвате персонализация всеки път.

Важно

Можете да имате най-много два прехода (точки) в изразите за полета. Не се опитвайте да създавате по-сложни изрази, като добавяте повече хмел към изразите, произведени с персонализация.

Съвет

Ако изисквате типовете данни, които се поддържат от персонализацията, обикновено е най-добре да използвате функцията за персонализиране , за да поставите кода, вместо да се опитвате да го въвеждате от самото начало. Това ще гарантира, че имената на обектите, релациите и полетата съвпадат с онези, използвани в базата данни, и ще ви помогне да избегнете неправилно изписани думи.

Бележка

Dynamics 365 Customer Insights - Journeys Функцията за изпращане на имейли не поддържа изчисляеми полета.

Динамични стойности в полетата „До“, „От име“, „От адрес“ и „Отговор до“

В раздела Резюме на формуляр маркетингов имейл а можете да направите различни настройки, които не са свързани със съдържанието, за вашето съобщение в секцията Подател и получател . Това включва стойности и изрази за определяне на стойностите на полетата „до“, „от име“, „от адрес“ и „отговор до“, които съобщението ще използва.

Настройки на подателя и получателя за имейл съобщения.

Един типичен начин да се възползвате от тази функция е да зададете адреса От име и От на собственика на записа на контакта. След това чрез присвояване на собственика на всеки запис към специалист по продажбите, управляващ този контакт, получателите ще получат маркетингови имейли, които показват адрес от някой, когото може да познават, което може значително да увеличи честотата на отваряне. Ето как:

  1. Ако вашият Customer Insights - Journeys екземпляр все още не е настроен да синхронизира обекта Потребител (системен потребител) с услугата за маркетингови прозрения, говорете с вашия администратор за настройването на това. Ако сте администратор, вижте Избор на обекти за синхронизиране с услугата за маркетингови прозрения за инструкции.
  2. Отворете имейл съобщението си и отидете в раздела Резюме .
  3. Изтрийте съдържанието на полето От име и след това изберете бутона Персонализиране Бутонът за персонализиранедо това поле.
  4. На първата страница на диалоговия прозорец за персонализиране изберете Контекстуално и го задайте на Контакт. След това изберете Напред.
  5. На втората страница на диалоговия прозорец за персонализиране изберете Свързан обект и след това:
    • Задаване на горния падащ списък (релация) на притежаващ потребител (Контакт) -> Потребител.
    • Задаване на долния падащ списък (поле) на Пълно име.
  6. Изберете OK , за да поставите израза, който трябва да бъде: {{contact.contact_systemuser_owninguser.fullname}}
  7. Изтрийте съдържанието на адресното поле "От" и след това изберете бутона "Персонализиране Бутонът за персонализиране" до това поле.
  8. На първата страница на диалоговия прозорец за персонализиране изберете Контекстуално и го задайте на Контакт. След това изберете Напред.
  9. На втората страница на диалоговия прозорец за персонализиране изберете Свързан обект и след това:
    • Задаване на горния падащ списък (релация) на притежаващ потребител (Контакт) -> Потребител.
    • Задайте долния падащ списък (поле) на Основен имейл.
  10. Изберете OK , за да поставите израза, който трябва да бъде: {{contact.contact_systemuser_owninguser.internalemailaddress}}

Можете да използвате подобни техники, за да поставите името на потребител или имейл адреса на собственика навсякъде в съдържанието на съобщението. Можете да направите това с помощта на персонализация или да копирате/поставите изразите на кормилото, или дори да въведете изразите на кормилото ръчно.

Можете да използвате динамичен израз, за да определите изходния URL адрес за елементите на изображението. За да направите това, изберете елемента на изображението, отидете в панела му Свойства и след това изберете бутона Персонализиране Бутонът за персонализиранедо полето Източник , за да поставите динамичен текст като част от URL адреса. Обикновено това се смесва със статичния текст, за да се събере пълен URL адрес. Можете например да включите ИД на контакт на получателя или името на фирмата, за да изберете изображение, което е подходящо за всеки индивидуален получател.

Можете също така да използвате персонализиране, за да помогнете за изграждането на динамичен израз за задаване на местоназначение на връзката за изображението.

Бележка

Библиотеката Dynamics 365 Customer Insights - Journeys с файлове генерира уникален GUID-базиран файлов път за всяко изображение, което качвате, което означава, че изображенията в библиотеката с файлове имат непредсказуеми URL адреси, които не включват оригиналното ви име на файла. Следователно, за да използвате техниките, описани тук, трябва да хоствате изображенията на собствен уеб сайт или услуга за хостване на трета страна, където URL адресите са предвидими и може да включват стойност, която лесно да се извлича от поле на Dynamics 365.

Намиране на идентификатори на записи

Неконтекстуалните изрази на полета (които използват формуляра {{EntityName(RecordID).FieldName}}) изискват ИД на запис, за да идентифицират конкретния запис, от който трябва да идва стойността. Обикновено персонализирането ви помага да намерите тези идентификатори, но понякога може да се наложи да намерите ИД ръчно, докато проектирате динамични функции за съобщение. За да намерите идентификатора на запис:

  1. Отворете записа, към който искате да направите препратка.
  2. Вижте URL адреса в адресната лента на браузъра, който трябва да е подобен на този в следния пример:
    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. Намерете частта от URL адреса, която започва с &id=, която е последвана от идентификационния номер на текущия ви запис. Копирайте този номер (само стойността) и го използвайте в израза си.

Разширено динамично съдържание

Можете да добавите разширено логично обработване към проектите на имейли, което може да направи съдържанието по-адаптивно към получателите, демографията и контекста. Този тип персонализиране изисква да имате базови познания по скриптиране и програмиране.

Както видяхте в предишни примери, динамичното съдържание е заобиколено от двойни скоби ( {{ и }} ). Това включва както стандартните стойности на полетата, които добавяте с помощта на функцията за персонализиране , така и по-усъвършенстваните конструкции за програмиране, описани в този раздел.

Съвет

Ако искате двойните скоби да се показват в съобщение, вместо да служат за обозначаване на началото или края на блок с код, поставете пред първата скоба обратно наклонена черта, например \{{ или \}}. Наклонените черти няма да се показват в окончателното рендирано съобщение, но двойните скоби ще се показват.

Условни декларации и сравнения

Условните (if-then-else) декларации показват съдържанието в зависимост от това дали един или повече условни израза се разрешават до „true“ или „false“. Можете да добавите кода, който се изисква, за да създадете тези твърдения, като го поставите в елемент за текст или чрез поставяне на елемент на потребителски код между останалите елементи на дизайна. Повече информация: Как да въведете разширено динамично съдържание в дизайнера

Условните декларации приемат следната форма:

{{#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}}

Където:

  • Условният блок трябва винаги да се отваря с {{#if … }}.
  • Условните изрази трябва да са оградени в скоби.
  • Условните изрази започват с <оператор>, който трябва да бъде една от стойностите, изброени в следващата таблица. Той определя как трябва да се съпостави първата стойност с втората.
  • <value1> и <value2> са стойности, които трябва да бъдат сравнени чрез условния израз и всяка от тях може да бъде динамична или константна. Ако value1 <> или <value2> е стойност на постоянен низ (не число или израз), тогава тя трябва да бъде оградена с единични кавички ('); за реални числа използвайте точка (.) като десетичен делинеатор.
  • Ако <value1> е булево поле (известно още като поле с две опции в Dynamics 365), тогава не включвайте оператор <,>< value2> или скобите. Булевите полета винаги имат стойност true или false, така че трябва просто да ги използвате директно, за да установите условието, като например: {{#if contact.is_vip}}
  • {{else}} и {{else if … }} клаузите не са задължителни.
  • Условният блок трябва винаги да се затваря с {{/if}}.

В следната таблица са изброени всички оператори, които можете да използвате в условните си изрази. Други оператори в момента не са налични, нито можете да използвате сложни булеви изрази (например с оператори AND или OR) във вашите условни изрази.

Dynamics 365 Customer Insights - Journeys Синтаксис (различаване на малки и главни букви) Оператор
eq Равно на
ne Не е равно на
lt По-малко от
gt По-голямо от
lte По-малко или равно на
gte По-голямо или равно на

Например тази условна конструкция може да се използва за установяване на езика, използван в поздрава в съобщението въз основа на държавата на всеки получател на съобщението:

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

Ето пример за условна команда, базирана на булево (две опции) поле, наречено is_vip; обърнете внимание, че тъй като булевите полета винаги връщат стойност true или false, в условието не са включени оператор, стойност за сравнение или скоби:

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

Съвет

Можете да тествате за празни стойности на полета с помощта на:

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

Където '' има две единични кавички, а не двойни кавички. Това намира празните полета, но не такива с нулева стойност.

Съвет

Въпреки че не можете да използвате сложни булеви изрази в условните си изрази, можете да приложите подобна функционалност, както следва:

Не се поддържа:

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

Е еквивалентно на (поддържа се):

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

 
Не се поддържа:

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

Е еквивалентно на (поддържа се):

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

Съвет

Когато тествате за стойности, които се съхраняват като набор от опции в базата данни, използвайте стойности на показалец за набора от опции, а не за показаните стойности. Например, може да имате поле contact.customertypecode, наречено, което съдържа цяло число, за да идентифицира типа клиент, който е. Всеки код на тип клиент също има показвано име, например 0 = „мед”, 1 = „сребро” и 2 = „злато”. В този случай трябва да настроите своя израз да използва показалеца (цяло число), а не съответстващата стойност за показване. Затова ако търсите за клиенти за злато, трябва да използвате:

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

Съвет

Когато тествате големи числовите стойности, като например „1 932 333”, изпуснете разделителя за хиляди (,) в отчета за сравнение, въпреки че често може да го видите представен в потребителския интерфейс. За да проверите за тази стойност, изразът ви следователно трябва да изглежда като:

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

Цикли for-each

Циклите for-each ви позволяват да преминавате през колекция от записи, които са свързани с конкретен текущ запис – например за предоставяне на списък с всички скорошни транзакции, свързани с даден контакт. Можете да добавите кода, който се изисква, за да създадете тези твърдения, като го поставите в елемент за текст или чрез поставяне на елемент на потребителски код между останалите елементи на дизайна. Повече информация: Как да въведете разширено динамично съдържание в дизайнера

Циклите for-each приемат следната форма:

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

Където:

  • Блокът на цикъла трябва винаги да се отваря с {{#each … }}.
  • Entity.RelationshipName идентифицира набора от свързани записи, върху които цикълът ще се повтаря.
  • Цикълът започва с първия наличен свързан запис и се повтаря за всеки наличен свързан запис, докато не бъдат изведени в списък всички свързани записи. Обърнете внимание, че свързаните записи ще бъдат връщани в произволен и непредсказуем ред.
  • {{this.RelatedField<n>}} идентифицира име на поле от свързания запис. Частта „this“ на този израз се отнася за свързания запис, който се обработва в текущата итерация на цикъла, и трябва да е последвана от валидно име на поле за свързания обект. Можете да включвате произволен брой полета във всеки цикъл.
  • Блокът на цикъла трябва винаги да се затваря с {{/each}}.

Например базата ви данни би могла да включва списък с продукти, които даден контакт е поръчал. Бихте могли да ги изброите в имейл съобщение, като използвате следния код:

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

В този пример системата е персонализирана така, Dynamics 365 Customer Insights - Journeys че да включва персонализиран обект , наречен продукт, който е настроен с релация 1:N между контакта и обектите на продукта в полето productid . За да може обектът на продукта да бъде достъпен за вашите имейл съобщения, той също трябва да бъде синхронизиран с услугата за маркетингови прозрения (както обикновено).

Важно

Само първите 1000 свързани елемента се добавят към релацията за целите на имейл рендирането. Използването на релации с повече от 1000 елемента не се поддържа в шаблони за имейли и може да доведе до неочаквани резултати.

Също така имайте предвид, че релациите от второ ниво не се поддържат. Следователно следният синтаксис не е разрешен:

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

Как да въведете разширено динамично съдържание в дизайнера

Трябва да сте внимателни, когато въвеждате разширен динамичен код в дизайнера, защото има много, понякога неочаквани, начини да го направите погрешно, което ще повреди кода ви. Ето някои съвети за това как да въведете и тествате кода си:

  • Използвайте елементи с код по избор, за да поставите фрагменти от код между елементите на проекта в раздела Дизайнер . Това е много по-видимо и надеждно от поставянето на кода директно в HTML с помощта на HTML раздела . Можете обаче да използвате и динамичен код в текстов елемент, в който случай вероятно ще трябва да почистите този код в раздела HTML , както е споменато по-късно в този списък. (Когато работите в редактора нацяла страница, изберете елемент от персонализиран код, за да редактирате съдържанието му.)
    Елементът на персонализирания код.
  • Когато въведете код в текстов елемент в раздела Дизайнер , всички допълнителни интервали и връщания на карета, които добавите, ще създадат &nbsp;и <p> тагове във вашия код, което може да го наруши. Винаги отивайте в раздела HTML след това, където ще видите всички тези допълнителни тагове и не забравяйте да ги премахнете.
  • Когато въвеждате код в текстов елемент, целият ви код за динамично съдържание трябва да се съдържа или в набор от начални и крайни тагове (като <p> например и </p>), или в HTML коментар (за код, който е напълно отделен от показвания текст). Не поставяйте код извън коментарите или валидните двойки HTML тагове (или елементи на персонализиран код), тъй като това ще обърка редактора (особено ако превключвате между разделите HTML и Design ). Трябва да работите върху раздела HTML , да инспектирате и коригирате HTML в текстовите си елементи.
  • Не поставяйте carriage returns между кодови елементи, които са част от един и същ израз (например в for-each цикъл), освен ако не оградите всеки ред в свой собствен набор от HTML тагове (както е илюстрирано в примера for-each loop, даден след този списък).
  • Функцията за персонализиране често е полезна за конструиране на изрази, които извличат стойности от вашата база данни, защото ви помага да намерите имена на таблици, полета и релации в базата данни. Този инструмент е наличен, когато работите в текстов елемент в раздела Designer , а при въвеждане на стойности има определени полета, които го поддържат (като темата на имейла). Персонализирането не е налично, когато работите в раздела HTML или в потребителски кодов елемент, така че вместо това можете да започнете с помощта на персонализиране във всеки текстов елемент и след това да изрежете / поставите получения израз в елемента на персонализирания код или HTML.
  • Името на релация, което използвате при създаването на цикли или поставянето на стойности за справка, трябва да съответства на това, използвано в услугата Marketing Insights. Това име на релация не е непременно същото като това, използвано за персонализиране на Dynamics 365. За да намерите правилното име на релация, използвайте функцията за персонализиране .

Например, можете да настроите реда за поздрав на имейл съобщение, като въведете следното в раздела HTML на дизайнера (вътре или извън текстов елемент):

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

Следващият пример (също показан по-рано) показва как да използвате коментари, за да оградите код, който съществува изцяло извън показваното съдържание (също в раздела HTML ):

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