Ribbon Access for Custom Entities to PowerSurveyPlus Surveys

Ribbon Access for Custom Entities to PowerSurveyPlus Surveys

Do you use PowerSurveyPlus? Do you enjoy the feature that allows one-click access from the ribbon to Surveys from lead and contact records? Do you wish you could have ribbon access to surveys from other entities?

We recently implemented a simple no-code ribbon customization that gives you access to this feature on almost any entity you desire. The only limitation is that the entity must be enabled for activities, so it can’t be an Activity Entity.

We wanted a user to be able to complete an evaluation of a task as soon as they completed it, so we added the “Fill out Survey” button to the ribbon for that activity.

To implement this, you need to have PowerSurveyPlus and Ribbon Workbench installed in your CRM organization. To learn more about Ribbon Workbench see this blog.

First, create a solution that contains the entity you want to modify. You do not need to include any components, but you should check the box labeled “include entity Metadata.” For the best ribbon workbench performance, this solution should not contain any other entities.

Now export this solution as an unmanaged solution and save it as a backup – this is a best practice when using ribbon workbench. In case your ribbon becomes broken or corrupted in any way, you can re-install the entity ribbon as it was before you started, by importing this solution back into your organization.

Then open the Ribbon Workbench, and load the solution you just created:

powersurveyplus

In this case, the entity we are updating is the project task entity. Once it is loaded, drag the button from the toolbox onto the Form ribbon in the location you want your button to appear:

powersurveyplus

  • Edit the ribbon of the Work Order entity to add a button “btnGenSurveysPlus”
  • Label: “Fill Out Survey” (this can be changed to reflect the purpose of your survey, if needed)
  • Tool Tip Title: “Fill out Survey”
  • Tool Tip Description: “Choose a Survey for this call and fill it out “
  • Image 16: $webresource:posp_ContactLeadSurveyActivityImg16
  • Image 32: $webresource:posp_ContactLeadSurveyActivityImg32 (these images will be present in your org as PowerSurveyPlus is installed)
  • Sequence: this will be filled based on where you drop the button
  • Command Core: btnGenSurveyPlus.Command

powersurveyplus

  • Click on the Plus sign next to Commands() in the solution elements to create the new command
  • Edit the properties of The Command
  • Id: btnGenSurveyPlus.Command
  • Add action of type – Custom JavaScript Action
  • Library: $webresource:posp_/scripts/FillOutSurvey.js  (This script provides the chooser, and opens the Assessment for updating – this Javascript already exists in your org if PowerSurveyPLus is Loaded)
  • Function name: FillSurvey

powersurveyplus

  • Add a Display Rule: posp.posp_survey.DisplayRule0.DisplayRule
  • The Display Rule:
    • In-customized: False
    • Add a Step > FormState Rule
    • Default: False
    • State: Create
    • Invert result: True

powersurveyplus

This display rule is to control the visibility of the button. In this case, the button will not be visible on the create form, so surveys can only be created from the entity after it has been saved.

Click Publish at the top of the screen. You will be reminded to take a backup of your solution – but you already did that when you created it, right?

It may take several minutes to build the new ribbon and publish it to your org, so be patient!

Now when we open a project task, the Fill out survey button is available.

powersurveyplus

The standard CRM Lookup opens when it is clicked.

powersurveyplus

When you click the Add button, the survey opens in a new browser window for completion.

Hopefully this helps you to make collecting survey data from your users even easier with PowerSurveyPlus!

For more Dynamics 365 tips and tricks – subscribe to our blog!

Happy Dynamics 365’ing!

Published at Mon, 15 Oct 2018 18:48:24 +0000

Leave a Reply

Your email address will not be published. Required fields are marked *