What’s new? Feedback and ratings on entities

With Microsoft Dynamics CRM Online 2016 Update 1 and Microsoft Dynamics CRM 2016 Service Pack 1, we now have an option to track feedback and ratings from customer for records in CRM with the click of a check box.

  • A new option appears on general tab on an entity customization form called “Feedback” which once checked creates an 1:N relationship of that entity with feedback entity similar to activities.
  • Users can use this entity to enter their response.
  • Feedback entity itself is customizable.

You can enable feedback on entities to allow customers to write feedback or provide ratings for any entity record.

Scenario: Business wants to track feedback received from customers on the customer support experience. In this case you can enable feedback for the Case entity to receive feedback.

In case of multiple ratings against one particular record, with use of simple rollup field the ratings can be consolidated.

References

https://www.microsoft.com/en-US/dynamics/crm-customer-center/enable-an-entity-for-feedback.aspx

https://technet.microsoft.com/en-us/library/dn531078.aspx#BKMK_Feedback

CRM 2011 – How to get the current user from within a dialog

Edgewater Blog

CRM 2011 Dialogs do not provide any easy way to access the currently logged in user’s information.

By creating a new instance of an entity (I create a special entity), the owner field will contain the currently logged in user.

The steps I follow:

  1. Log into CRM and create a new entity, call it new_CurrentDialogUser. You do not have to add any new fields.
  2. Open your existing dialog for editing.
  3. From the Dialog editor, the first thing to do is create an instance of new_CurrentDialogUser.
    • Create a new stage, positioned at the very beginning of the dialog.dialogue graphic 1
    • Click ‘Add Step’ and select ‘Create Record’.
    • Choose the type to be new_CurrentDialogUser.
    • Click on properties. Notice the owner field is presented. Do not populate this field. Instead, when the ‘Create Record’ step executes, it will default the owner to the currently logged in user.dialogue graphic 2
  4. Once the ‘Create Record’ steps executes in your dialog, you have…

View original post 139 more words

Exchanging data between CRM Forms and IFRAMEs

Salim Adamon - Dynamics CRM Blog

One of the most common requirements when we add content in IFRAMEs or Web Resourses in CRM is to have the ability to communicate with the calling or source CRM form to perform all sorts of operation. This article explains how this can be achieved using the postMessage JavaScript messaging mechanism.

What does postMessage do?

It’s a JavaScript method which was initially created to facilitate cross-origin communication between web pages. There are often valid scenario in which we need to display a page from another website in a new window or in an IFRAME. That’s the easy part. The more complicated part is when there is a requirement to perform some operations on the source page based on a action that occurs on the external page in the new window or IFRAME.

In the example below, consider we have a contact form that displays an external page in an IFRAME…

View original post 321 more words

Voice of Customer available for CRM 2016 Update 1 Online

As mentioned in CRM Team Blog, Voice of the Customer surveys is now a feature in Microsoft Dynamics CRM Online 2016 Update 0.1 and out of preview. Using which you can create surveys to capture feedback regarding your product or service from CRM. Recipient can take the survey on any web enabled device and the response is logged into CRM. This captured data can be utilized for generating reports, analyzing trends and making appropriate changes to your product/service. More information on the product is available here.

Enable CRM tenant for Voice of Customer

Though late as my CRM online tenant was set up in APAC region, yesterday my org was provided with an option to install two new solutions, Voice of Customer and Fantasy Sales team. To use these features, your O365 admin should install and enable these solution for the organization. Details for doing it are available here.

Once the solution is installed and displayed on your O365 page, you can navigate to your CRM 2016 tenant.

Configure Voice of Customer

Successful installation of the solution will add new tab to the ribbon named “Voice of Customer” which contains all related entities.

Before you can start using the service, you are required to enable it.

For enabling it, navigate to Settings à Solutions à Voice of Customer solution.

Select the agreement check box and click “Enable Voice of the Customer” button.

Once this is done, you are ready to start using the feature.

The configuration page of solution also provides you a link to Configuration Entity for VoC.

This configuration entity consists of details like default email template, Organization Id, Content Delivery Network path, etc.

Creating a new Survey

To create a survey, navigate to Voice of the Customer à Surveys and create a new record.

On the New Survey page, we have 3 options

  1. Survey: This page has all configuration related data for the survey like Survey Appearance (Theme, Logo, Redirect URL, Redirect Text, and Header Text), Invitations and Actions, Feedback, etc.

  2. Designer: This page allows us to create the UI for the survey. It provides options to add pages, questions, ratings, etc.

  3. Dashboard: Here we can see the details regarding the response obtained for the feedback.

Once a survey is created, you can preview it from the Survey page itself before publishing it.

No feedback data of the preview will be stored in CRM.

Creating a Survey Activity

** We are creating this manually but I’m sure we should be able to automate it using processes too.

A survey activity can be created from most of the entities in CRM like Contact, Account, Case, etc. We will be creating one form Contact.

Navigate to Contact and open a record for which we want a survey. In the related records, select Survey Activity and “Add New Survey Activity”.

Set the activity details like Regarding, To, Survey, etc. Once saved this will generate the survey invitation Link that can be sent to users for providing feedback.

Executing/providing the feedback

End users can provide feedback simply by clicking the feedback link provided to them. Below is the sample feedback that I created for capturing the session feedback (one of the hobby project I’m working onJ)

Page 1

Page 2

Page 3

Tracking the Survey Response

Survey response can be tracked from related Survey Response for Survey Activity.

I’m still exploring the feature more. Please comment if you have anything to share on same.

Connecting CRM 2016 to Power Query in Excel 2013 with updated Odata feed

In my previous posts we had discussed about how we can connect Dynamics CRM with Power Bi and Power Query. But with the introduction of API in CRM 2016, there is slight change in the OData feed URL generated for CRM 2016.

Using the same process mentioned in older posts but making use of this new OData feed URL, we can achieve same results for CRM 2016 as well.

The url format is [Your Organization Root URL]/XRMServices/2011/OrganizationData.svc.

e.g.: https://u———–y.api.crm5.dynamics.com/XRMServices/2011/OrganizationData.svc

OnLoad event for SubGrid in CRM 2015 Update 1

Till CRM 2011 we used to use Xrm.page.getControl(“grid”) to get a grid control available on form and perform any runtime activity like changing the view/query, etc. Also we were required to write the complete script on OnLoad even of form and add a timeout till the subgrid is loaded as subgrids are loaded asynchronously after the form is loaded. There was no way we can have a trigger on load of a subgrid till CRM 2015 Update 1. What we used to do is explained in older post here.

But with CRM 2015 update 1, we now have an option to execute scripts when data is loaded in subgrids. Because of which we are not required to have any timeout added in the script and iterate it till the data is loaded into subgrid.

With addition on GridControl.addOnLoad method, we can now add event handler for OnLoad event of subgrid which is more reliable than the form OnLoad event for form with a timeout. This event will get triggered whenever data is bound to a subgrid.

The steps to add this event is not similar to adding a form OnLoad event (from form customization popup), the way to add it is by invoking it using a code from other events (e.g. form OnLoad) by making use of GridControl.addOnLoad method. Similarly, use GridControl.removeOnLoad to remove event handlers.

Xrm.Page.getControl(“Contacts”).addOnLoad(myContactsGridOnloadFunction);

References:

https://msdn.microsoft.com/en-us/library/dn932137.aspx?f=255&MSPPError=-2147217396

https://msdn.microsoft.com/en-us/library/dn932126.aspx#BKMK_subgridAddOnLoad

https://crmcooking.wordpress.com/2015/07/15/writing-scripts-for-subgrids-with-crm-2015-update-1/

{Error Resolution} Timeout Exception: The request channel timed out while waiting for a reply after 00:01:59.7350618 in Dynamics CRM online

MSDYNAMICSBLOG BY DEEPESH

Last week one of my Microsoft friends reported an error on ERD generator connecting to CRM online. It always worked well until some days ago. Now often occurs an errors about a timeout:

TimeoutException: The request channel timed out while waiting for a reply after 00:01:59.7350618. Increase the timeout value passed to the call to Request or increase the SendTimeout value on the Binding. The time allotted to this operation may have been a portion of a longer timeout.

clip_image002

I was trying to figure out why it is happening. A little digging told me the reason, CRM online has a limit of 2 minutes for execution timeout.

Increase the timeout value by setting

ServiceProxy.Timeout property(Timespan)

Further reading: https://blogs.msdn.microsoft.com/crminthefield/2011/06/13/microsoft-dynamics-crm-timeout-settings/

Hope it helps and Happy CRMing!

Have anything similar to share? Please leave in the comments.

View original post

Trigger Business Rules from Business Process Flow – CRM 2016

Though we did had both Business Rules and Business Process Flow in CRM 2015 as well, but there was no way to invoke a Business Rule for some action happening on Business Process Flow. Thus if I was required to perform a simple operation of locking a case type field when case stage changes to Research, I was required to have a JavaScript instead of using a no code approach of using business rules.

But now these kind of requests can be achieved using combination of business process flow and business rule. While creating a Business Rule, we have an option under ‘Field’ to select a ‘Business Process’. This allows two kinds of checks to be performed:

  1. Check for what business process flow is being used.

  2. Check based on field stage (Active/Selected) of business process flow.

This helps in completing above mentioned scenario and similar other requirements without writing a JavaScript.

Web API in Dynamics CRM 2016: What you should know?

Previously with Dynamics CRM 2011 we only had Organization Services that used to help interact with data in CRM system. CRM 2016 has provided us Web API now. Web API is similar to Organization service with few differences that we are going to discuss below.

  • Unlike Organization Service which was optimized for use with .NET, Web API can be used with different programming languages.
  • Unlike Organization Service, no longer required to use libraries specific to Microsoft Dynamics CRM. Web API is built on open standards.
  • Plug-ins or workflow assemblies on the server still expect to use the Organization service.
  • Eventually the Web API will replace the Organization service and Organization Data service.
  • The Web API should be your first choice for new development that will support Microsoft Dynamics CRM 2016 and future versions of Microsoft Dynamics CRM Online.
  • You can use the Web API Discovery service instead of IDiscoveryService web service. The Web API Discovery service provides the same benefits as the Web API. This service enables your applications to determine, at run-time, the organizations that the signed-in user belongs to.
  • There are three different ways to manage authentication when using the Web API.
    • JavaScript in web resources: With JavaScript within HTML web resources, form scripts, or ribbon commands you don’t need to include any code for authentication. In each of these cases the user is already authenticated by the application and authentication is managed by the application.
    • On-premises deployments: For on-premises deployments, must include the user’s network credentials.
    • Microsoft Dynamics CRM Online or internet facing deployments: For CRM Online or an on-premises Internet-facing deployment (IFD), must use OAuth.
  • Perform operations using the Web API
  • Web API types and operations
  • Web API Limitations