Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!Get Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Request now
Hi
I am trying to get entity record counds from dynamics using its API and the function RetrieveTotalRecordCount.
I am making a call similar to this
which returns data as follows
What i would like is a table with the table name (key) and the correcpoding rowcount(value) ie
| Table Name | Row Count |
| salesorder | 6679 |
| salesorderdetail | 10547 |
| invoice | 17568 |
| invoicedetail | 59618 |
As you can see the response returns 2 key/value lists.
however the only way i can find to do this currently is to execute the query twice and expand each of the lists separately into a table adding an index field to each then joining the 2 tables back up together on this index column. This seems a rather clunky way of doing to so was wondering if anyone could suggest a smarter way?
thanks in advince
Solved! Go to Solution.
@Anonymous
You could try something like
Json = Json.Document(Response)[EntityRecordCountCollection],
toTable = Table.FromList(List.Zip({Json[Keys], Json[Values]}),(x) => {x{0}, x{1}}, {"Table Name", "Row Count"}),
tableType = type table [ #"Table Name" = Text.Type, #"Row Count" = Int64.Type],
Final = Value.ReplaceType ( toTable, tableType)
where Response is the response.
Cheers
@Anonymous
You could try something like
Json = Json.Document(Response)[EntityRecordCountCollection],
toTable = Table.FromList(List.Zip({Json[Keys], Json[Values]}),(x) => {x{0}, x{1}}, {"Table Name", "Row Count"}),
tableType = type table [ #"Table Name" = Text.Type, #"Row Count" = Int64.Type],
Final = Value.ReplaceType ( toTable, tableType)
where Response is the response.
Cheers
Thank you @Smauro
With your example i was able to get it working with the following code
let
Source = OData.Feed("https://xxxxxx.crm11.dynamics.com/api/data/v9.1/RetrieveTotalRecordCount(EntityNames=['contact','lead','serviceappointment','task'])", null, [Implementation="2.0"]),
EntityRecordCountCollection = Source[EntityRecordCountCollection],
toTable = Table.FromList(List.Zip({EntityRecordCountCollection[Keys], EntityRecordCountCollection[Values]}),(x) => {x{0}, x{1}}, {"Table Name", "Row Count"})
in
toTable
Check out the November 2025 Power BI update to learn about new features.
Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!
| User | Count |
|---|---|
| 11 | |
| 9 | |
| 7 | |
| 4 | |
| 4 |
| User | Count |
|---|---|
| 24 | |
| 15 | |
| 13 | |
| 12 | |
| 9 |