It seems to be a common mis-conception that in order to extend a data entity you always need a developer in every scenario.
But imagine a scenario where you are already live (or in a phase in your project where you no longer have access to development resources) and you need to extend a data entity to import some data from an external or legacy system, without the need to have any complex business logic surrounding these new data fields.
Note: Please read the disclaimer at the bottom of this blog-post before rushing to go and use what I will be explaining next.
If you find yourself in the above situation you could leverage the "Custom fields" feature released recently to directly add fields to a table using the personalisation feature on a List Page or form. More information on how to add a cutom field can be found here. By April 2019 Microsoft is aiming to have all customer environments on application version 8.0 or 8.1 so everyone should be able to leverage this feature from then onwards.
Once you have created your custom field on your table you can expose the field to the data entity by following these steps:
- Browse to D365-FO >>> System Administration >>> Setup >>> Custom Fields
- On the left-hand side select the table where you added your new field (the lookup seems to automatically filter on tables where you have run-time custom fields)
- Expand the Entities section to view the set of relevant entities.
- Click the Edit button.
- Modify the Enabled field to be selected for each entity that should expose this field.
- Click Apply changes to save your selections.
At this point you should have the field added to the data entity and exposed also exposed to the oData endpoint and as a result the field is now available in the MS-Excel Dynamics 365 Office add-in. Please note that the field won't appear automatically in your columns but you would need to add it manually using the design feature from within the office add-in, as shown in the screenshot below where I exposed a custom field called "MBTest_Custom" to the CustomersV3 data entity.
As a next step in this process I would also recommend to reload the mappings for your data entity. this can be done by browsing to D365FO >>> Data management workspace >>> Data Entities, find your data entity in question and click on "Modify target mapping" button.
In this form click on the "Generate mapping" button (number 1 in screenshot below) and when that is finished your new custom field on the data entity will be available for mapping (number 2 in screenshot below).
Now you are done and you have successfully extended a data entity without Visual Studio or a developer.
Note: In my opnion, it is a pity that the "Custom fields" form in System Administration does not also show non-standard fields created by extensions in Visual Studio. In this way, if the developer created a custom field from the AOT but forgot to add it to the relevant data entity you would still be able to expose such a field to a data entity. Maybe I will open a product suggestion to Microsoft in the near future. ;-)
Disclaimer: I am not evengelising over-use of the custom fields feature. You should use this feature with care as it has limitations. If you are still in the design/develop phase of your project it is always recommended to add new table fields and extend data entities using Visual Studio extensions to the AOT via a developer.

Like
Report
*This post is locked for comments