We use ClickDimensions to send out surveys. We have built dashboards to slice and dice the survey results. The queries behind the charts on the dashboard need to filter by the survey questions. Survey Questions are stored in a custom, managed entity in ClickDimensions. So the filter criteria used is “the survey question is the same as the Name on this record”. Whenever you create query filter criteria using values from a record, CRM stores the Globally Unique Identifier (GUID) for that record.
Here is the Problem
When you export Survey Questions from one ClickDimensions environment and move them to another, CRM creates different GUID values for the same question in different environments. So when we move a solution from DEV to QA that has Survey Questions as filter criteria; they don’t work in the new environment. Because the GUIDs are different, you have to rebuild all views after moving a solution.
Our Solution to the Problem
This blog post defines one solution around this problem: create a custom option set field on the Survey Question tab, and use that field value in query filter criteria.
Another issue: Custom field values do not come across when you export survey questions from one environment and import them into another. So, unfortunately, you still have to update these custom survey question field values manually in each environment.
So, this solution still requires some work in each environment. The best practice I’ve uncovered is:
- Build out a new custom field in DEV, place it in a solution.
- Build out all Survey Questions records in DEV, filling out your custom field values
- Export the Survey Questions (data from the entity) into EXCEL from DEV
- Export the Survey Questions from DEV, import them into QA using Click D’s Export/Import tools (Remember, the custom field values don’t come over)
- Export the Survey Question data from QA (export all columns so the GUIDs come across, and your empty column from the new field)
- Copy and paste the custom field values from your DEV questions into the QA exported data
- Import that Excel file with the new values back into QA to update the custom field values on the Survey Questions
If you don’t want to export/import, you only have to modify each survey question, not each view that references a survey question. We have about 30 survey questions, but we have dozens of views that reference a question (and most reference 9 questions, each of which has to be fixed individually in each query). Also, keeping the data in the survey question entity, and making these custom fields visible on a view, makes it much easier to validate and correct results rather than wading through the filter criteria for dozens of queries.
The MultiSelect Option Set
Finally, by creating a custom MultiSelect Option Set, now available in Microsoft Dynamics 365 v9.0, we can specify that the answers to one question roll up into several different queries just by selecting multiple values from this new field.
As the MultiSelect Option Set is worthy of its own post, we’ve made it one. To continue viewing the solution to this problem, please see the next article: MultiSelect Option Set Fields in Dynamics 365, Version 9