This isn't so much a problem that others won't figure out on their own, just that I think it isn't obvious how to do it in a reasonably consistent manner that you can use almost everywhere. So I've included a walkthrough below to make it easier to get started.
Persnickety about PowerApps
Tuesday, February 13, 2024
Searchable, Sortable, Filterable Items property for Datatables and Galleries
Friday, November 10, 2023
Write files to SharePoint via Power Automate (Attachments and Document Libraries)
Others have written this up, and I smoothed out the errors I was hitting through Matthew's blog post here. However, I wanted to draft up a slightly different take just to clarify some gotchas as well as solidify the use-case.
This approach fits w/ a series of other posts I've done on:
- allowing users to interact w/ SharePoint data they don't have rights to
- reading JSON data into Collections using Power Automate
- writing JSON data from Collections using Power Automate
Thursday, October 12, 2023
App Migration - Automated response to share requests for redirected URLs
If anyone has had their IT team decide to start putting the CoE Tookit in place and start dumping your applications into quarantine, then you might benefit from few patterns/tools for migrating applications in a more friendly manner.
When this started in our organization, one of the first things I did was to figure out the best way to communicate with thousands of users on how to point at a new URL. At least, until "somebody" bothers to follow the process on how to migrate applications across environments and retain the URL.
NOTE: This pattern also works if you just want to move to a new app and deprecate your old one for any reason at all.
Monday, September 11, 2023
Using the Form Control Creatively: More flexible UI pattern
The first application I wrote for PowerApps utilized the Forms control. It was...OK. However, I kept bumping up against it limiting my ability to control the UI in ways that I really found problematic.
The pre-built handling for issues w/ Submissions are nice, but the main reason I was using PowerApps was to have a more flexible user experience. Since that time I only rarely used Forms except when absolutely required.
Until now.
Tuesday, July 18, 2023
Stupid Power Automate Tricks
As I have posted before, Power Automate is just terrible. This is another of those situations where Microsoft had something "on the shelf" and just threw a new wrapper on it and called it done. The language used is annoying and derived from Azure Logic Apps, the functionality is inconsistent in how it treats certain kinds of complex objects/arrays (I mean, it is consistent in that it is consistently terrible). and the overall experience for version control is lacking (there is none).
However, here are a few tricks I keep coming back to time and again that I've pulled from other people's blogs but then time and again forget how to do just because I hate this platform so very much.
Sunday, June 25, 2023
The "Best" datasource for PowerApps
I give lots of credit for the folks doing Power Platform videos on YouTube. I too sometimes grab them as a reference. However, Shane Young did a video a few days back that was just terrible. My comment in response to him was a little snarky (which he left up and responded to), but then I went into detail of why his delivery on this was wrong. That comment was deleted (not by me).
So here is my own version of his terrible take on: the best datasource for PowerApps.
To just jump to the answer, it is SharePoint.
I'm sorry.
Monday, June 19, 2023
Starting Your App: Splash Screen vs. OnStart
Microsoft revamped how they handle the OnStart event for PowerApps last year (2022) and they made some additional tweaks this spring. This has led some people to messing around w/ an array of methods using OnStart and StartScreen and just causing themselves no end of headaches. Ultimately, there is one way you should start your application, and that is with a Splash Screen that does all of this in one place.
Friday, January 13, 2023
Writing Collections from PowerApps to SharePoint using JSON & Power Automate
I had done this quickly back in October when I first tried out the ParseJSON() function in PowerApps, but hadn't gotten around to documenting it up. Then when I went checking to see what everyone else had written up I saw that Shane has done a video on this. Oddly enough, we both approached this nearly identically.
However, I'm dropping this here for posterity and because I always like to read my own typing vs. listening to anybody else's voice. ;)
If you have solved grabbing lots of records from "somewhere" (i.e. SharePoint) and returning it to your PowerApp as a bundle of JSON using Power Automate, the reverse is now what you need to solve for. Fortunately, writing out a lot of updates is similarly easy, but also similarly obtuse per guessing exactly how to get it done. Here's the Q&D on how to make it happen.
Sunday, November 20, 2022
Turning JSON data into Collections in PowerApps
After years of futzing about w/ workarounds and hacks, the new ParseJSON() function in Power Apps has given us a glimpse of how this will work for us going forward. The ability to push data out to other applications has been possible for awhile now, but our ability to consume JSON back into Power Apps easily has eluded most app builders.
While this function is still in the Experimental branch of PowerApps, there is no doubt that some form of this will go forward. The benefits are massive and this changes everything about how we deploy large-scale applications.
Not to mention the possible security benefits |
Thursday, November 3, 2022
Stripping HTML tags from SharePoint data at runtime
If you find yourself in a situation where "somebody" imported a bunch of SharePoint data that included what SharePoint decided had some HTML tags in it, then you might wind up with a multiline text field that has whatever value you care about surrounded with some very unique "<div></div>" tags. Everything might look fine when you're glancing at your original list, but when you query the field you see something like:
<div class="ExternalClassCA06509747B841D08AA4020D3A431C1E">Some Value</div>
And don't think that SharePoint will be nice and use the same tag within that <div> tag. It will not. So if you're going to do any manipulation/comparison on that within your PowerApp (like looking for matching values), you're going to need to get rid of that garbage.
While it is of course always better to try and fix the data, if you're in a situation where you don't control it or cannot do it easily (say when you're dealing w/ hundreds of thousands of rows), then it is time to manipulate this within your app.