RE: Get Data from Dynamics 365 Finance and Operations (Online) in Power BI
We've spent the last 4 years getting data extracted out of D365FO via both BYOD extracts and ODATA, supplemented by system integrators having to deploy custom entities to data not exposed in either route in. We've latterly been deploying Microsoft Data Lake which, for the most part, answers most prayers out of the box (though gives rise to a lot of extra setup to show all the table/entity views in Synapse SQL). The sort of issues you'll encounter are:
1) Some entities are marked "Private", so you cannot see them via ODATA sources at all. Some are also not available for BYOD downloads via Data Management.
2) Some useful data tables are not exposed by any standard entity (examples - custtrans and vendtrans, which are the only way to suss if an invoice line has been paid or particially paid for).
3) Some entities leave out useful fields. Eg - the INT field that links Sales Order Line to Sales Invoice line is omitted in both, so no easy way to effect a join connecting them
4) Some large data structures publish as aggregations - eg: GeneralLedgerActivities (mainly Generaljournalaccountentry/Generaljournalentry - the GL), BudgetrActivities (mainly BudgetTransactionHeader/BudgetTransactionLine - the Budget Registry) - so you end up pulling large data loads over only to filter most of it out on arrival
5) Microsoft no longer publish ERD's since AX days, so it's an act of discovery to reverse engineer the joins needed
Alex Meyer kindly provided some code to help work out the joins between tables on D365FO: Alex Meyers ERD Tool: Automated Solution to Find Table Relations in AX 2012 and D365FO - Alex Meyer (alexdmeyer.com)
GitHub Link:
https://github.com/ameyer505/MicrosoftDynamicsTableAssociations
YouTube Link:
If you want to see this app in action here is a YouTube link: https://youtu.be/8045Vnp8WZY
However, I can't get that working on my Windows 11 PC (suspect a .net 3.5 issue) but a colleague got a list of tables and joins using this plus by looking in the back of a dev machine in Visual Studio for me.
You have a journey ahead of you. Happy to help, though I've not yet tackled Voucher Transactions.
Ian W.