Product documentation
In This Topic
    Dynamics Advanced Search Setup
    In This Topic

     Important

    This page is under construction, more information will appear soon.
       

    The setup for the Dynamics Advanced Search functionality is almost completely identical irregardless of the object used. Therefore this section will explain the needed setup as a generic topic for all. If navigation paths are exactly the same except for the starting module depending on the object for which Advanced Search is used, they will be written out as Module > ... > ... etc. If the navigation paths differ between the modules, they will be written out separately.

    If there are any differences in setup or additional options for a specific object, they will be pointed out and explained in their own respective topics. We will also make references to the standard Microsoft documentation for the standard (retail) functionality that is used as part of Advanced Search.

    Parameters

    The Parameters can be set up from the module the used object is from. Each of these parameters forms have a tab for the Advanced search parameter settings: Module > Setup > module parameters

    Field Description Remark

    Azure Search - Enabled

    Local search is standard available, which uses the internal Dynamics database and resources to find the required information. For more advanced cq higher performance search capabilities it is also possible to use the Azure Search service by activating this slider. Please note that this requires (additional) licensed Azure services. 

    Local search is used and described for this topic.

    If the record count of the search is lower than this threshold the query will be executed automatically. Please be aware that this setting can influence the performance and user experience drastically.

    When set, the categories that contain search results are highlighted in the tree and show the record count.

    Update search data - Category attribute group       

    If set, the search data will be generated automatically when an attrbute group is added or removed from a Category.

    Update search data - Product release

    If set, search data will be generated when a product is released. Be aware this might impact the performance when releasing large volumes of products.

    Logging - Log enabled

    When set, each search session, task and filter is logged.

    Languages

    The company’s language cannot be deleted. This is the default language

    Search text operators - Reset to default

    Resets / initializes the operator values to the default values

    Search text operators

     

    Hierarchies & Categories

    Product information management > Setup > Categories and attributes > Category hierarchies

    Rental management - HSO / Service management - HSO > Setup > Advanced search > Category hierarchies

    The search data is linked/grouped to objects via the Category hierarchies from the standard retail framework.

    For a basic understanding of them and how to create and use category hierarchies within Microsoft Dynamics 365 for Finance and Operations, please check the following links:

    https://docs.microsoft.com/en-us/learn/modules/create-products-product-masters-dyn365-supply-chain-mgmt/7-category-hier-attr

    https://docs.microsoft.com/en-us/dynamics365/supply-chain/pim/tasks/create-hierarchy-product-classification

    https://docs.microsoft.com/en-us/dynamicsax-2012//category-hierarchy-form

    https://docs.microsoft.com/en-us/dynamicsax-2012/appuser-itpro/about-category-hierarchies

     

     

     

      

     

    Attributes & Attribute groups

    Product information management > Setup > Categories and attributes > attributes / attribute groups

    Rental management - HSO / Service management - HSO > Setup > Advanced search > attributes / attribute groups

    One of the sources for the search data are the attributes from the standard retail attributes framework.  

    For a basic understanding of them and how to create and use attributes and attribute groups within D365FO, please check the following link:

    https://docs.microsoft.com/en-us/dynamics365/commerce/attribute-attributegroups-lifecycle

    Please note that for the Advanced Search functionality to work properly, the attributes must be linked to the Category hierarchy via an Attribute group. Allthough linking attributes directly to a category is possible in the standard framework, this will not result in the desired search data for the Advanced Search functionality, so please make sure to always use attribute groups.

    Some additions have been made to the standard attribute setup options, which are explained below:

     

    Parent and child attributes

    Product information management > Setup > Categories and attributes > attributes

    Rental management - HSO / Service management - HSO > Setup > Advanced search > attributes

    Standard Microsoft Dynamics 365 for Finance and Operations does not support any dependency between attributes. However, when using both brand and model as attributes for example, a dependency does usually exist. E.g. when there are three car brands: BMW, VW and Volvo, and each brand has its own car models, it would be possible with standard only to specify the invalid combination of brand = BMW and model = Golf.

    With the Dynamics Advanced Search functionality it is possible to define parent-child relationships between attributes that will prevent the entry of non-feasible combinations. Note that this is only possible when the attribute types are Fixed list.

    To define a parent-child relationship, the field Parent attribute needs to be filled on the applicable child attribute - this field becomes available on the attribute whenever an attribute is created with an attribute type of fixed list. When a parent is selected, a tab is added to the attribute form where the allowed value combinations can be specified

    Example: the attribute Car model has a Parent attribute Car brand. In the dependent values of the attribute Car model, all feasible combinations can be specified.

    Field Description Remark
    BMW 240

    BMW

    520

    Volkswagen

    Golf

    Volkswagen

    Passat

    Volvo

    240

    Volvo

    V70

    Volvo

    V90

     Note

    The validation of dependent attribute values is only checked when changing attribute values on the product itself. In case an invalid combination of attribute values is setup on the category hierarchy or attribute group, the erroneous child value will be blanked.
       

     

    Sorting of attributes within the attribute group

    Product information management > Setup > Categories and attributes > Attribute groups

    Rental management - HSO / Service management - HSO > Setup > Advanced search > attribute groups

    Attributes can be sorted within the attribute group either alphabetically or manually. The default value for the Attribute sorting field on an attribute group is alphabetically, however, if a different sequence is desired this setting can be switched to manual. This activates the move buttons Top, Up, Down and Bottom on the attributes tab within the attribute group and have been added to be able to sort the attributes into the desired sequence. This sorting will influence the way the attributes are shown in the compare attributes form and other (product) attribute value forms.

     Note

    In the Advanced Search solution the standard field Display order is not used to influence the ordering
       

     

    Filter control behavior

    Product information management > Setup > Categories and attributes > attributes

    Rental management - HSO / Service management - HSO > Setup > Advanced search > attributes

    There are two additional fields on the attribute to control filter behavior:

    Field Description Remark
    Not filterable When this setting is activated, the values from this attribute will be searchable via text search, but they will not be created as separate filters  This is useful for attributes where all values are different/unique which would create a large amount of filters with little use (such as description, length, weight, thickness etc.).

    Value range

    Select a Value range for this attribute. It is only possible to select a filter range for the supported base types (integer, decimal, date/time).

    Only filter ranges with the same base type as the current attribute type can be used. Filter ranges can group attribute values together when creating the filter for it. For more information see Value ranges. 

     

     

     

    Edit / Maintain product attribute values

    The default values of attributes can be overridden for individual products/objects.

    For Released products enter the attribute values form from the Released products list or details page by using the Ribbon action pane Product > Set up > Product attributes

    For Rental objects the form can be entered from the Rental objects list or details page by using the Ribbon action pane Rental object > Set up > Attributes

    For Service objects the form can be entered from the All service objects list or details page by using the Ribbon action pane Manage > Details > Attributes

    The form that opens shows a list of all attributes linked to the object including the origin and whether or not the attribute value is the default one. When set in edit mode it is possible to change an attribute value on the right hand side pane (not in the grid). When using the Reset value option, the attribute value will be reset to the default value. It is advised to use this option to set a value back to the default value when needed instead of changing it manually to the default value (as the manual change will not be recognized by the system as being the default). There is also an option to add the translated version of the attribute value via the Translate option for Free text values only (list values etc. can be translated on the attribute type).  

    Note that category attributes are displayed in the list as well for informational purposes, but cannot be changed at object level (only on category level).

     

    Field search

    Another source for the search data comes from almost any object-related existing field in the system. This avoids the creation of double data by having to create an attribute such as color when this information is already available as a dimension.

    Field search queries

    Module > Setup > Advanced search > Fields search queries

    Which object related data can be accessed by Advanced Search is determined via queries. These can be set up from scratch and there are also some predefined queries provided.

    Field Description Remark
    New Creates a new query record with a default query

    Edit query

    Opens the selected query for edit via the standard window for creating an advanced query

    It's possible to add new related table joins

    Load predefined queries

    Opens a new dialog with the available predefined queries. Select the one(s) to be added and click OK

    Once the queries are added they can be used as is or modified to link to other related tables as needed

    Query name

    Unique name of the query

    Query

    Used by

     

    Field search setup

    Product information management > Setup > Categories and attributes > Category hierarchies

    Rental management - HSO / Service management - HSO > Setup > Advanced search > Category hierarchies

    The actual object related fields (and their values) that are included in the search data are specified on the Category hierarchy, on the Field search fast tab.

    Field Description Remark
    Module

    Indicates the module the setup is related to

    This is neccessary as it is possible to have environments with multiple implementations of Advanced search (e.g. Product Search & Rental object search)

    Query

    Select the Field search query to be used for this line

    Table name

    Needed as a query typically has more than 1 table

    Field name

    For the Field name, Method name and Field group name columns only 1 of these options can be used per line.

    Method name

    Select the display method that needs to be filterable/searchable

    For the Field name, Method name and Field group name columns only 1 of these options can be used per line.

    Field group name

    Select the entire field group that need to be filterable/searchable

    Not filterable

    This is mostly used for name, description and other (text) fields where all values are different/unique which would create a large amount of filters with little use.

    Filter range

    Select a filter range to be applied if desired 

    See Filter ranges for more information

    Inherited from

    Shows the level in the hierarchy this line is inherited from if applicable

    Inherit from parent

    Activate to have the setup inherited from the parent category

    When setup is inherited it is still possible to add additional lines specifically for the current child category

     

    Predefined field search queries 

    There are some predefined queries available that can be used as they are or modified as needed. These queries ahve to be loaded first, which can be done by going to Module > Setup > Advanced search > Field search queries and clicking the 'Load predefined queries' button from the ribbon.

    The queries below are part of the default setup:

    Field Description Remark
    Inventory module parameters - Sales order Products, Items, Inventory module parameters (Sales)

    Items

    Colors

    Products, Items, Distinct products, Inventory dimensions, Colors

    Configurations

    Products, Items, Distinct products, Inventory dimensions, Configurations

    Item groups

    Products, Items, Relationship between items and item groups, Item groups

    Sizes

    Products, Items, Distinct products, Inventory dimensions, Sizes

    Styles

    Products, Items, Distinct products, Inventory dimensions, Styles

    Product translations

    Products, Product translations

    Company language

    It is possible to setup additional queries that can retrieve data from other tables. Even if there is a 1:n relation from the released product to e.g. the external item description data, a query can get the right information and store it as search value for the released product.

     

    Filter ranges

    Module > Setup > Advanced search > Filter ranges

    Filter ranges are ways to group values together in ranges when creating the filters. This is very useful for values that differ a lot and would otherwise result into many filter values with quite little use (e.g. price, length, width, height, weight). Take for example the weight of tablets or phones; every model is slightly different. But getting filters for each individual value such as 143 grams, 147, 148, 156, 188, 190 etc will not really help when trying to make a selection out of the entire offering. With filter ranges you can setup how to group the filters, so you could group them into ranges for anything between 125 and 150 grams, 150 to 175 and 175 to 200 grams for example.

    Ranges are setup in a separate setup form and need to be linked to a property (an attribute or a field search field). This way the same filter range can be reused for different properties  

    Field Description Remark
    Name Name of the filter range type E.g. Power

    Description

    Description of the filter range type

    E.g. Power of the engine

    Filter range base type

    A filter range with a certain base type can only be used for attributes with the same type

    Auto-include

    Filter range - Name

    Name of the range

    E.g. 0-200 W

    Filter range - Lower bound

    >= Minimum (this value is included in the range)

    E.g. 0.00

    Filter range - Higher bound

    < Maximum (this value is not included in the range)

    E.g. 200.00

     

    Update search data

    When new data has been added that needs to be searchable, it can be needed to update the search data so that the new information is included in the search data.

    Module > Periodic tasks > Advanced search > Update search data

    Field Description Remark
    Include - Attribute search Activate to update the search data related to attributes

    Include - Field search

    Activate to update the search data related to field search

    Categories - Include subcategories

    Activate to update the search data for all underlying categories of the selected ones

    Available categories

    After selecting the desired hierarchy all availble categories from that hierarchy display here and can be selected for the data update. A selection can be made at any level, please make sure to use the -> arrow button to truly select the categories for update 

    Selected categories

    Displays all categories that have been selected for update. Please use the <- arrow button to remove unwanted categories from the selection

    If the Include subcategories slider is activated, the underlying categories for selected ones will not display in the selected box, but be aware that they are included in the update.

    Once all settings are as needed click OK and the search data will start to update. Depending on the size of the database and the amount cq size of the selected categories this proces can be done almost instantly or take considerably longer.

    As with almost all periodic tasks within Microsoft Dynamics 365 for Finance and Operations this task can also be set to Run in the background as per standard, which can be advisable for large updates to the data set.

     

    Images

    Adding an image to the used object for the Advanced Search functionality enhances the user experience, especially when comparing multiple objects for example.

    From the Released products form you can add an image of the product to the item. From the list (or the detail form) you can enable the available fact boxes ('Related information' on the right hand side) and from there upload the relevant image.


    Please be aware of the checkbox for the default image.

    For Service and Rental objects it is also possible to define the image on respectively the Service object or the Rental object parent and/or child level, with a fallback method to display a 'higher' level image if there is none specified on a 'deeper' level.