I’ve recently been looking at a few cases where I’ve got seemingly incorrect results from my FetchXML queries. This can manifest itself as the results limited to 50,000 records or records being skipped. I’ve narrowed these down to some behaviour I wasn’t aware of when you retrieve multiple pages of Continue Reading
I hit a strange situation yesterday. I was retrieving data from Dataverse with a FetchXML query but some values were missing from my results, while others were duplicated. Turns out it’s an easy situation to get into without noticing.
The latest addition to FetchXML is Late Materialize. Turning this on or off doesn’t change the results of your query, but it does change how it’s executed behind the scenes, which could lead to some performance improvements.
I’ve looked at different ways of accessing CDS metadata recently, but there’s another way I’d overlooked – using FetchXML. CDS exposes a limited amount of metadata as special virtual entities that lets you query it using standard FetchXML syntax:
I’ve been doing some work today on filtering multi-select optionset fields in SQL 4 CDS and using the T-SQL endpoint, and I came across a few interesting quirks.
One great option in FetchXML is to filter dates using a relative filter such as “this week”, “older than 2 years” etc. This is particularly helpful when you build a view, as it will automatically build the date criteria each time so your view is always up to date.
I was very pleased today to see a new feature in FetchXML – column comparisons! This allows us to build queries that compares the values in one column against those in another. Previously we’ve only been able to compare a column against a constant value.
A follow-up on my previous post on link-entity, prompted by this tweet from Daryl LaBar: Was unaware of the new join operators. @jordimontana @XrmWizard have either of you used these, or know what they are supposed to do? The documentation is rather lacking…https://t.co/Nr4AyZMzb2 — Daryl LaBar (@ddlabar) April 2, 2020
You can ensure your query only produces each row once using the distinct attribute. For example, if you have multiple entries for the same company name you can get the list of unique names using:
By default you’ll get up to 5,000 records that match your query. The top-level <fetch> element supports a few options to help you control this: