Microsoft Forms Pro

In my previous post I have presented in details how the new Forms Pro differs from its older brother – Forms. Since then, having the possibility to play around with the new product, I would like now to describe you it’s outstanding feature – option for personalization.

Forms Pro – Dynamics 365 tool

Turns out, that Forms Pro is really mainly designed to support Dynamics 365 in communication and feedback from customers. You are also able to use it for general purposes, as you’ve been previously doing with Forms, it’s true power is unleashed when adding Common Data Services (CDS) and e.g. Dynamics 365 together. Mainly because Dynamics 365 relay on CDS. Data you store, or create is saved there.

The scenario in which we bind together these products is e.g. new marketing campaign. Imagine that once it is over, you send communication to all customers who were added in your CRM during the campaign period. Imagine also, that you know which products from the campaign these customers bought.

Now, you would like to you ask them, how do they found these products, are they happy, do they have any issues with them, would they like to share their feedback, etc…

Personalization in Forms Pro

First, we need to create the survey. In the survey, personalization is made by the placeholders, that will be replaced by the values related to particular user, once he open the questionnaire.

Placeholders

To create a placeholder simply click the ellipsis (…) icon and select “Personalize”:

Personalize survey
Personalize survey

Now create properties, that you want to use later in survey.

Important!

There is yet no possibility to create rules based on properties or to create dynamic questions, based on e.g. number of not empty properties. So for now, try to create dynamic yet fixed surveys.

Now, as the properties are created, we can use them in titles, questions and answers, e.g. “Dear {{First Name}} we would like to ask you a couple of questions regarding your purchases from our “Super Deals” campaign in {{City}}”.

Piping variables in Forms Pro
Piping variables in Forms Pro

Next create questions:

You have purchased {{ProductName1}} product. We would like to find out how familiar are you with statements below:

Personalize questions and answers
Personalize questions and answers

One general remark!

If you want then answers in your survey to be tracked with names and emails, you have turn on the “Record name” setting. It is turned off by default, and without that all responses will appear as anonymous:
Enabling tracking of responses in Microsoft Forms Pro
Enabling tracking of responses in Microsoft Forms Pro

Invitation e-mail

Now, as the questionnaire is ready we need to send invitations to participate in it. To do that, simply open the “Send Survey” tab and then click “Microsoft Flow” option. This will allow us to create a dynamic e-mail, being send by Microsoft Flow, that will also pull data from CDS and push it to every single survey.

Important!

There is yet no possibility to use other personalization parameters apart from name and last name in the e-mail body. Hopefully soon it will be possible to use all parameters defined for the survey in the e-mail too.

For the e-mail you can either use one of the existing templates (1) or to modify the existing one and save (2) or to save as new (3), or to delete it (4) or to change its name (5):

Working with e-mail templates in Forms Pro
Working with e-mail templates in Forms Pro

When you’re done with creating your e-mail template simply save it and leave it.

Microsoft Flow

To create a Microsoft Flow click the button “Configure Flow” below the email body.

Important!

To be able to use CDS/ Dynamics 365 actions you need PowerApps/ Flow P1 plan or Dynamics 365 license.

You can as well create new Flow from a scratch, directly in the https://[region].flow.microsoft.com site. For the purpose of this example, let’s imagine, that the workflow is triggered manually, once a campaign is over.

Once it is triggered, Flow should get information from CDS:

  • Orders placed in Campaign
Getting orders from Campaign, from Dynamics 365 in Microsoft Flow
Getting orders from Campaign, from Dynamics 365 in Microsoft Flow

Hey, you know that you can do exactly the same using Common Data Services set of actions – these are counterparts for Dynamics 365, e.g.:

Common Data Services or Dynamics 365 actions - counterparts
Common Data Services or Dynamics 365 actions – counterparts

Important!

Note, that you should use the internal name of the column, you would like to use for filtering. So not the “CampaignId” or “Campaign”, but “_campaignid_value”.

Next it needs to get:

  • Customers who placed orders
  • Products from orders (this has to be done via the “Order Lines” entity)
Microsoft Flow - getting customers and products for orders from Dynamics 365
Microsoft Flow – getting customers and products for orders from Dynamics 365

I am using the expression:

body('Get_order_lines')?['value'][0]['productname']<br>
body('Get_order_lines')?['value'][1]['productname']

Just to get the name of 1st and 2nd product from the order, as first I have defined only questions for two products.

Then for the gathered data, workflow must send, for each customer, an e-mail, providing data for specified parameters. To (1) is the customer’s email address. As well as properties 2, 3, 4 and 5. They are taken from “Contacts” entity for the customer from the order. Properties 6 and 7 are the custom variables I defined for the survey personalization:

Action triggering sending Microsoft Forms Pro invitations emails
Action triggering sending Microsoft Forms Pro invitations emails

Once the Flow is created, we can finally run it for testing!

The outcome

The sent e-mail will look the same, as when you  prepared it, however it will have all the placeholders replaced with your data:

Sent e-mail with placeholders replaced by actual values from Dynamics 365
Sent e-mail with placeholders replaced by actual values from Dynamics 365

So will the survey for a specific user look like – all the parameters are used to replace placeholders with actual information:

Survey quesitons and answers placeholders replaced by actual values from Dynamics 365
Survey quesitons and answers placeholders replaced by actual values from Dynamics 365

Cool right? 😊

Other options of personalization

You can as well use another option for personalization, that is the mass-mailing – what you have to do, is to upload a list of recipients (or use contacts from the default entity “Contact”):

Importing recipients for e-mail invitation in Microsoft Forms Pro
Importing recipients for e-mail invitation in Microsoft Forms Pro

First download example of the input file (1). Then prepare and upload yours (2). If matching records already exist in CDS, they will be updated (3). After you are ready, import data (4) so that you will see list of recipients in the “To” field (5).

Important!

List of recipients inside the CSV file MUST BE comma delimited. Not semicolon. Using semicolon won’t work.

Once sent, forms will again replace placeholders from your mail with name and last name from CDS.

Unfortunately there is yet no possibility here to match custom properties with data from CDS or uploaded Excel file. Hope this mapping functionality will be finalized soon:

No possiblity to map custom variables in e-mail body in Microsoft Forms Pro
No possiblity to map custom variables in e-mail body in Microsoft Forms Pro

Do you like information you learnt? If you have any questions don’t hesitate to ask them in comments or contact me directly.