Explicit column selection for SharePoint online

Get up to 100x faster loading times in your app using Explicit column selection for SharePoint online.

Microsoft silently dropped a few days ago a new feature previously known in Dataverse, that optimizes data loading by selecting only the necessary columns on demand. This feature is enabled by default for new Canvas apps and works automatically. I’ve tested it in the newest authoring version (3.25023.2), and it does not work yet as the app in multiple testing scenarios fetched all data – that is why it was probably left unannounced. Once fully rolled out, you can expect up to 100x faster app loading times. How is this possible? Imagine you want to fetch only the largest ID value from the SharePoint list possible where no new columns were added. You only need to load the ID column, right? It turns out that without an explicit column selection feature, Canvas Apps will automatically load the whole data record including ID and most of the technical metadata columns such as Title, Modified, Created, Author, link to the record, etc. In my test, a record from which we wanted to get just the ID (18 characters) resulted in a response of 2175. That’s a 120x improvement. If you have additional columns, the difference will be even more drastic! So… does speeding up to 100x seem reasonable? To take full advantage of this feature, start using ShowColumns() whenever querying the SharePoint lists. It will help the Power Apps Analysis Engine to select exactly what you need. In the case of some obfuscated data collection in your code, you may sometimes see that some columns were not loaded. This is what will help you address this issue as well!
Browse articles