Creating a Forms Pro survey is simple and straightforward. Making sure you’ve created it in the right place can be a little confusing at first though. Depending on what other areas of the Microsoft stack you are using, you could end up with multiple places in which you could possibly add a new survey. You’ve got a default environment, and then possibly a couple of additional ones. What’s that all about? Well to understand it, we need to take a look at the Common Data Service (CDS) and understand what it is and how it works.
CDS is a database that includes a base set of standard entities. These include things like Account, Contact, Currency, Address. Dynamics 365 for Customer Engagement (D365 CE) data is also stored in the CDS and has entities that the standard CDS does not (cases are a prime example). Guess what else is stored in CDS? Yup, Forms Pro data. In a previous blog you’ve seen how to add these entities to a D365 CE application. The fact that all of your data is stored in CDS means you can create powerful and impactful applications for your organisation. To see for yourself, the easiest thing to do is go https://make.powerapps.com/ and log in. At the top right, click on the Environment drop down. Below you can see that I have a default environment. This is NOT my D365 CE environment. The ones below for PROD and SANDBOX are my D365 CE environments.
Within the default environment, open up the Entities section from the navigation on the right. Here you can see all of the standard entities included as part of CDS. If you scroll through, you will notice many of the D365 CE entities you are used to are missing from the list. As mentioned, the default is not your D365 CE environment. Now switch the environment to one of your D365 CE environments and look through the entities again, and you will see cases, product, quote, invoice etc.
Now let’s look at Forms Pro. Once logged in, do the same and click on the link from the top right to see your list of environments. Hopefully now you won’t be surprised to see default is one of the environments listed. When you create a survey it exists only in the environment where you created it. Same with the survey invitations and responses. It’s therefore important to create your surveys in the correct environment.
Also, let’s consider this scenario. You create your survey in the default environment and then use the Microsoft Flow option to create one of the Flow templates. It allows you to create it, but then you look at the flow and there are errors. Below we can see exactly why this would happen in an output message for the incidents (case) entity. They don’t exist in your default environment as discussed above.
You could change the environment on the flow to one of your D365 CE environments, then you will see that Cases is available as an entity to select. So, now that hopefully it makes sense with the different environments, what’s the right approach for testing and then moving your surveys in to a live PRODUCTION environment? Well, you might come up with your own, or have a strong opinion about your organisations best practices to follow, but the information below is a suggestion. I am interested to hear if you have a different approach so share in the comments if that’s the case!
First, create your surveys in the Sandbox environment within Forms Pro. You can then test them out and be sure they are working as you intended. Once ready to move to Production, click on the ellipsis (three dots) on the top right of the survey. You can only do this from your main Forms Pro landing page where you see all of your surveys listed.
Next, click the Copy option.
Then click on the Copy to button to copy it to another environment.
And finally, pick the environment to copy it to. From this Microsoft documentation page, when you copy a survey to another environment, only the survey structure and its branching rules are copied—invitations, responses, and associated flows are not.
So to recap an important part of the documentation about copying…. associated flows are not moved along with the survey. First thing, make sure any of the Flows you have related to Forms Pro surveys have Current set up as the Environment rather than a specific environment.
For the Microsoft Flow, best practice should be to add them to a solution and move them from one environment to another. However, at the moment, you cannot add an existing Flow to a solution… 🤦♀️- so… let’s use another method. On the Flow associated to the survey you copied from your sandbox environment, click on Export and select the Package (.zip) option.
Give it a Name and then click Export.
Now navigate to your Production environment in Microsoft Flow and click Import.
On the Import setup we want to select Create as new. Once created, walk through and link up to all of the connectors again.
An important step for any Forms or Forms Pro steps you have, you will need to edit and link to the correct Survey. So… one thing that is a little frustrating, because you have copied the survey, it’s got the same name… so you will see it listed multiple times. How do you know you are copying the right survey? You won’t, unless you edit the name, pick the right one, then change the survey name back again. Perhaps add the name SANDBOX at the end of each survey when you create them, then you can remove it after you have copied it to the PRODUCTION environment.
Now I would suggest doing a test of your survey to make sure everything is set up correctly after you have moved things over to your environment. Once linked, you will see that there is one flow configured against your copied survey in your PRODUCTION environment. Simple? Not really, but achievable. Got any other suggestions? Share in the comments section below, would be great to get other perspectives!
Want to just watch how to do this? Check out the video below: