Thursday, January 12, 2017

Relevance Search in Dynamics 365 Online

this is a very unique and great feature, but only available in online. doubt when it will be available for on prem. this is also available in mobile clients.

Relevance Search delivers fast and comprehensive search results in a single list, sorted by relevance. It uses a dedicated search service external to Microsoft Dynamics 365 (online) powered by Microsoft Azure Search to improve your Microsoft Dynamics 365 (online) search experience. As an administrator or customizer, you'll be able to enable and configure Relevance Search in the Dynamics 365 user interface without writing code. Many of the configuration steps will look familiar to you, as they use the same user interface as the Quick Find configuration.

Compare Dynamics 365 searches

There are three kinds of search in Dynamics 365:

The following table provides a brief comparison of the three available searches.
FunctionalityRelevance SearchFull-Text Quick FindQuick Find
AvailabilityAvailable for Microsoft Dynamics 365 (online) organizations that have installed Microsoft Dynamics CRM Online 2016 Update. Not available for Dynamics 365 (on-premises) organizations. Available for Dynamics 365 (on-premises) organizations, starting with Microsoft Dynamics CRM 2015 Update Rollup 1. Available for Microsoft Dynamics 365 (online) organizations and Dynamics 365 (on-premises) organizations.
Enabled by default? No. An administrator must manually enable it. No. An administrator must manually enable it.Yes
Single-entity search scopeNot available in an entity grid. You can filter the search results by an entity on the results page.Available in an entity grid. Available in an entity grid.
Multi-entity search scopeThere is no maximum limit on the number of entities you can search.Searches up to 10 entities, grouped by an entity. Searches up to 10 entities, grouped by an entity.
Search behaviorFinds matches to any word in the search term in any field in the entity.Finds matches to all words in the search term in one field in an entity; however, the words can be matched in any order in the field.Finds matches as in a SQL query with “Like” clauses. You have to use the wildcard characters in the search term to search within a string. All matches must be an exact match to the search term.
Search resultsReturns the search results in order of their relevance, in a single list.For single-entity, returns the search results in an entity grid. For multi-entity, returns the search results grouped by categories, such as accounts, contacts, or leads.For single-entity, returns the search results in an entity grid. For multi-entity, returns the search results grouped by categories, such as accounts, contacts, or leads.

How Relevance Search works

Relevance Search uses the same default scoring concepts as Azure Search. Scoring refers to the computation of a search score for every item returned in search results. The score is an indicator of an item's relevance in the context of the current search operation. The higher the score, the more relevant the item. In search results, items are ranked in order from high to low, based on the search scores calculated for each item. By default, a search score is computed based on statistical properties of the data and the query. Relevance Search finds documents that include the search terms in the query string, favoring the documents that contain many instances of the words in the search term and their close proximity to each other in the document. The search score goes up even higher if the term is rare across the index, but common within the document. The results are then ranked by search score before they’re returned. Search score values can be repeated throughout a result set. For example, you might have 10 items with a score of 1.2, 20 items with a score of 1.0, and 20 items with a score of 0.5. When multiple hits have the same search score, the ordering of same-score items isn’t defined, and isn’t stable. Run the query again and you might see items shift position. Given two items with an identical score, there is no guarantee which one appears first.

Searchable fields are analyzed in the Azure Search index to provide a more natural, end-user friendly search experience by breaking words into their root forms, text normalization, and filtering out noise words. All searchable fields in Relevance Search are analyzed with the Microsoft Natural language analyzer, which uses Lemmetization to break words down into their root linguistic forms. For example, “ran” will match to “run” and “running” since “run” is considered the base form of the word. Word stemmers, such as SQL full-text indexes, don’t have any linguistic context and only consider matches where the root is the same as the inflectional form. With stemming, “run” would match to “running” and “runner”, but not “ran” since it doesn’t consider “ran” to be a word linguistically related to “run”. All searchable fields in Relevance Search use an analyzer that most closely matches the organization’s base language. For Kazakh, which is the only language supported by Dynamics 365 but not by Azure Search, all fields are analyzed using the default analyzer.


Enable Relevance Search

By default, Relevance Search is disabled. To enable Relevance Search, do the following:

  1. Go to Settings > Administration.
  2. Click System Settings > General tab.
  3. In the Set up Search sub-area, select the Enable Relevance Search check box, as shown here. Do not click Select here.


4.After you enable Relevance Search, the Enable Search consent dialog box opens. Click OK to give your consent. 

Select entities for Relevance Search

There is no limit on how many entities you can include in the Relevance Search results. However, there is a limit on the total number of fields you index. Currently, the maximum is 1000 searchable fields for an organization. When you select an entity to include in the search results, you’ll notice a number in parentheses next to the entity name. The number indicates how many fields of the entity will be synced to the external search index. Some fields, such as Primary Name and ID, are shared by multiple entities and don't count toward the total. The progress bar Total fields indexed shows the percentage of indexed fields to the maximum allowed number of searchable fields.
When you have reached the indexed field limit, you’ll see a warning message. If you want to add more fields to the index, you’ll have to free up space, either by removing some of the fields that are already in the index or removing entire entities from Relevance Search.
To select entities for the Relevance Search results, do the following:


  1. Go to Settings > Customizations.
  2. Click Customize the System.
  3. Under Components, expand Entities, and then click Configure Relevance Search.
  1. Click Publish All Customizations for your changes to take effect.

The fields you add in Quick Find view become part of the external search index. There is no limit on how many searchable fields you can add for each entity. However, there is a limit on the total number of indexed fields, as was explained in the previous section. Find Columns on a Quick Find View define the searchable fields in the external search index. The View Columns on a Quick Find View define the fields that are displayed in the user interface by default, when the matched results are returned. The fields that are highlighted replace the fields that don’t have the highlighting. The first four matched fields are displayed in the results.
You can use the Quick Find view to define which fields appear as facets when users search by using Relevance Search. All View Columns with data types other than Single Line of Text and Multiple Lines of Text are marked as facetable and filterable in the index. By default, the first four facetable fields in the Quick Find view for the selected entity are displayed as facets when users search by using Relevance Search. At any time, you can only have four fields selected as facets.



  1.  Click Add Find Columns. In the dialog box, select the fields you want to add to the search index. When done, click OK. In the following illustration, you see the Account entity fields added to the external search index. 

If you want to include an entity in Relevance Search, the Can enable sync to external search index managed property for this entity must be set to True. By default, the property is set to True for some of the out-of-the-box system entities and all custom entities. Some of the system entities can’t be enabled for Relevance Search.
To set the managed property, do the following:


  1. Go to Settings > Customizations.
  2. Click Customize the System.
  3. Under Components, expand Entities, and then click the entity you want.
  4. On the menu bar, click Managed Properties. For Can enable sync to external search index, click True or False to set the property to the desired state. Click Set to exit, as shown here

        Click Publish for your changes to take effect.
    If you want to change the Can enable sync to external search index property to False, you must first deselect the entity from Relevance search. If the entity is included in Relevance Search, you’ll see the following message: “This entity is currently syncing to an external search index. You must remove the entity from the external search index before you can set the Can Enable Sync to External Search Index property to False.” If Can Enable Sync to External Search Index is set to False, you’ll see the following message when you try to include an entity in Relevance Search: “Entity can’t be enabled for Relevance Search because of the configuration of its managed properties.” For custom entities with particularly sensitive data, you may consider setting the Can enable sync to external search index property to False. Keep in mind, after you install the managed solution on the target system, you won’t be able to change the value of the property because it’s a managed property.

    Privacy notice

    By enabling Relevance Search, data in participating entities and attributes in your Dynamics 365 (online) instance will begin syncing to and be stored in an Azure Search index.
    Relevance Search is not enabled by default. The system administrator must enable the functionality within a Dynamics 365 (online) instance. After Relevance Search is enabled, system administrators and customizers have full control over the data that will be synchronized to the Azure Search index.
    System customizers can use the Configure Relevance Search dialog box in Customization Tools to enable specific entities for search and then configure Quick Find views on enabled entities to select the searchable attributes. Data changes are synchronized continuously between Dynamics 365 (online) and Azure Search through a secure connection. Configuration data is encrypted and the required secrets are stored in Azure Key Vault.
    Azure components and services that are involved with Relevance Search functionality are detailed in the following sections. 

9 comments:

  1. Your post is very useful for all SAP learners. Thanks for providing such a great post...
    SAP FICO Online Training | SAP FSCM Online Training in India

    ReplyDelete
  2. Thanks for this interesting information! Please visit our website and take a look at new solutions in intelligent business application Microsoft Dynamics 365.

    ReplyDelete
  3. Hi,
    Glad I found your site, this is an eye-opener for marketers. We are proud to be a solution provider for a diversified customer database, ranging from the small, medium technology firms to the giant multinationals. Generate more revenue with email marketing, b2b marketing, list solutions & market research services. Microsoft Dynamics CRM Users Email List

    ReplyDelete
  4. Hello guys! Thank you for providing this information! I like your blog and think it's very useful for me:) It exactly what I need to know about and thanks that you put Source code!

    ReplyDelete
  5. Hello guys! Thank you for providing this information! I like your blog and think it's very useful for me:) It exactly what I need to know about and thanks that you put Source code!

    ReplyDelete
  6. I really appreciate information shared above. It’s of great help. If someone want to learn Online (Virtual) instructor lead live training in Big Data Hadoop and Spark Developer, kindly contact us http://www.maxmunus.com/contact
    MaxMunus Offer World Class Virtual Instructor led training on MS Dynamic CRM. We have industry expert trainer. We provide Training Material and Software Support. MaxMunus has successfully conducted 100000+ trainings in India, USA, UK, Australlia, Switzerland, Qatar, Saudi Arabia, Bangladesh, Bahrain and UAE etc.
    For Demo Contact us.
    Sangita Mohanty
    MaxMunus
    E-mail: sangita@maxmunus.com
    Skype id: training_maxmunus
    Ph:(0) 9738075708 / 080 - 41103383
    http://www.maxmunus.com/


    ReplyDelete
  7. This comment has been removed by the author.

    ReplyDelete
  8. خدمات متميزه ومتطورة من خلال شركة مكافحة حشرات بالدمام علي اعلي مستوي من التقدم في العمل استمتع بالكثير من الخدمات المتطورة والحديثة شركة مكافحة حشرات بالخبر علي اعلي جودة وتقدم في المملكة .

    ReplyDelete
  9. I am regular reader of your blog and no doubt it all stuff is awesome. The best thing about your sharing and posting is that you always provide content that is helpful for both the newbie and experts.CRM Software Development

    ReplyDelete