Troubleshooting Dynamics 365: Allocation Type Missing in Entitlement Creation?
This article addresses and resolves a common issue encountered in Dynamics 365 Customer Service: the absence of options in the Allocation Type dropdown menu during entitlement creation. Users may find themselves unable to proceed with creating new entitlements because this critical dropdown list is unexpectedly empty. This guide will walk you through the symptoms, causes, and step-by-step resolutions to restore the functionality and ensure smooth entitlement management within your Dynamics 365 environment.
Symptoms of the Issue¶
The primary symptom of this problem is the inability to create entitlement forms from the Customer Service admin center app. Specifically, when attempting to create a new entitlement, the Allocation Type dropdown, which is essential for defining how entitlements are allocated, displays no available options. This lack of data prevents users from specifying the allocation method and thus halts the entitlement creation process. The root cause often lies in the data configuration related to entitlement entity type mappings and the underlying EntitlementEntityAllocationTypeMappingBase table within Dynamics 365.
Cause 1: Missing Allocation Type Field in Entitlement Entity¶
One potential cause for the missing Allocation Type options is the absence of the Allocation Type field itself within the entitlement entity, particularly when the Case option is selected. If this field is not properly configured for the Case entity, Dynamics 365 will not be able to display the relevant allocation types in the dropdown. This is a configuration issue that can often be overlooked during system customization or updates.
Resolution for Cause 1¶
To rectify this situation, you need to ensure that the Allocation Type field is correctly added to the entitlement entity. Follow these steps within your Dynamics 365 environment:
-
Navigate to Customization Settings: Access the customization area within Dynamics 365. This typically involves going to Advanced Settings and then selecting Customizations, followed by Customize the System. This will open the customization interface where you can modify entities and fields.
-
Locate and Expand Entitlement Entity: Within the customization interface, find and expand the Entitlement Entity. This entity houses the fields and configurations related to entitlements in Dynamics 365.
-
Access Fields and Check Allocation Type: Under the Entitlement Entity, navigate to the Fields section. Here, you need to check if the Allocation Type field exists. If it’s present, ensure it is correctly configured and visible. If it is missing, you will need to add it.
-
Add the Allocation Type Field: If the Allocation Type field is not found, create a new field with the name “Allocation Type.” Ensure that the field type is appropriate for storing allocation type options (usually an option set or lookup field). Once added, save and publish your customizations to apply the changes.
By adding or verifying the presence of the Allocation Type field, you ensure that the system has the necessary structure to display allocation options when creating entitlements, especially for Case-related entitlements. After completing these steps, test the entitlement creation process to see if the Allocation Type dropdown now populates correctly.
Cause 2: Incorrect Entitlement Entity Allocation Type Mapping Records¶
Another significant cause of the missing Allocation Type options stems from issues with the entitlement’s entity allocation type mapping records within the EntitlementEntityAllocationTypeMappingBase table. This is particularly relevant when the Entity Type field in the entitlement entity has multiple options beyond just Case.
By default, the Entity Type field in the Entitlement table is an option set field with Case as the pre-configured default option. When Case is the sole option available for Entity Type, the Entitlement table automatically loads the appropriate Allocation Type values specifically for the Case entity. However, when more than one option is configured for the Entity Type field (for instance, if you’ve added custom entities to be entitled), the system requires explicit mapping to load the correct Allocation Type values based on the selected Entity Type. If these mappings are missing or misconfigured, the Allocation Type dropdown will appear empty.
This issue often arises because the mapping records in the EntitlementEntityAllocationTypeMappingBase table might be inadvertently deleted, corrupted, or were never properly created during system setup or customization, especially when extending entitlement capabilities beyond just Case entities.
Resolution for Cause 2¶
To resolve this issue, you need to investigate and potentially re-create the allocation type mapping records. The first step is to determine if these records are missing or corrupted. If you have access to another Dynamics 365 organization where entitlement creation is functioning correctly, you can export the allocation type values from that environment as a reference or even to import into the problematic environment.
Here is an example of what the Entitlement Entity Allocation Type Mapping table should contain, showing mappings for Case to common allocation types such as Number of cases (incident_numberofcases) and Number of hours (incident_numberofhours).
| Entity Type | Allocation Type Option Name | Allocation Type Option Value |
|---|---|---|
| Case | Number of cases | incident_numberofcases |
| Case | Number of hours | incident_numberofhours |
| … | … | … |
To re-create these records, follow these steps within Power Apps:
-
Access Power Apps: Navigate to Power Apps and log in with your Dynamics 365 administrator credentials.
-
Select Dataverse and Tables: In the Power Apps interface, choose Dataverse from the left-hand navigation menu, and then select Tables. This will display a list of all tables within your Dynamics 365 environment.
-
Find Entitlement Entity Allocation Type Mapping Table: Use the search functionality to locate the Entitlement Entity Allocation Type Mapping table. This table is crucial for defining the relationship between entity types and available allocation types for entitlements.
-
Edit and Add Row Records: Once you’ve found the table, select Edit to view and modify its contents. Compare the existing records with the example table above, or with an export from a working Dynamics 365 organization. If records are missing or incorrect, you will need to add new rows to match the required mappings.
- For each mapping you need to create, select “New row”.
- In the new row, specify the Entity Type (e.g., “Case”).
- Select the appropriate Allocation Type Option Name (e.g., “Number of cases”).
- Enter the corresponding Allocation Type Option Value (e.g.,
incident_numberofcases). This value is often the schema name of the field representing the allocation type. - Repeat this process for all necessary mappings, ensuring you cover all relevant Entity Types and their corresponding Allocation Types.
-
Permissions: If you encounter issues re-creating records through the user interface, especially due to permissions, ensure you are using a user account with maximal permissions within Dynamics 365, such as a System Administrator or Customizer role. This will ensure you have the necessary rights to modify data within the
EntitlementEntityAllocationTypeMappingtable.
After re-creating the necessary mapping records, test the entitlement creation process again. The Allocation Type dropdown should now be populated with the correct options based on the selected Entity Type, allowing you to proceed with creating entitlements as expected.
Web API Approach for Re-creating Records¶
If you continue to experience difficulties re-creating the records through the user interface, or if you need to automate this process, you can utilize the Dynamics 365 Web API. The Web API provides a programmatic way to interact with Dynamics 365 data and configurations.
You can use the Web API to create new records in the Entitlement Entity Allocation Type Mapping table. Here’s a general outline of how you might approach this using the Web API (specific code implementation will depend on your chosen programming language and environment):
-
Authentication: First, you need to authenticate with your Dynamics 365 instance using appropriate credentials (e.g., OAuth 2.0).
-
Construct Web API Request: Create a POST request to the Dynamics 365 Web API endpoint for creating records in the
Entitlement Entity Allocation Type Mappingtable. The endpoint will typically look something like:[Your-Dynamics-365-Organization-URL]/api/data/v9.2/entitlemententityallocationtypemappings. Replace[Your-Dynamics-365-Organization-URL]with the actual URL of your Dynamics 365 instance. -
Request Body: In the body of your POST request, you will need to include a JSON payload that defines the record you want to create. This payload should include the necessary attributes for the
Entitlement Entity Allocation Type Mappingtable, such as:{ "msdyn_entitytype": "...", // Entity Type option value (e.g., "Case") "msdyn_allocationtypeoptionname": "...", // Allocation Type Option Name (e.g., "Number of cases") "msdyn_allocationtypeoptionvalue": "..." // Allocation Type Option Value (e.g., "incident_numberofcases") }Replace the placeholders (
...) with the actual values for each mapping you want to create, referencing the example table provided earlier. -
Execute Web API Request: Send the POST request to your Dynamics 365 instance. If successful, the Web API will create the new mapping record.
-
Repeat for All Mappings: Repeat steps 2-4 for each mapping record that needs to be re-created.
Using the Web API can be particularly useful in scenarios where you need to deploy these mappings across multiple environments or as part of an automated configuration process. Ensure you have the necessary permissions and understand the Web API authentication and request structure before attempting to use this approach.
By systematically addressing these potential causes and applying the corresponding resolutions, you should be able to restore the functionality of the Allocation Type dropdown in Dynamics 365 entitlement creation and ensure the smooth operation of your customer service processes.
If you found this article helpful or have further questions regarding troubleshooting Dynamics 365 entitlements, please feel free to leave a comment below! Your experiences and questions can help others in the community.
Post a Comment