I inheritted a PowerApp app, and I know that a Gallery object is populated by a table named SelectedThingies. I have been searching through the PowerApp for the past 2 hours trying to find where this table is populated. It is shocking that there is no code search feature, and this seems to be deemed acceptable. Is there a Search code capability that I'm unaware of? I'm willing to download a package and use some binary text editor if necessary. Anything.
Hey,
So I know this is being worked on by the team already as mentioned by @ mehdis on the github repo,
https://github.com/Microsoft/powerapps-tools
Tool: PowerApps Review Tool
You can view them from the tool, which is easy enough, and export as one single JSON to view instead of digging through all the others.
Not sure what the timeline is for this to be released as part of Studio, but using this in the interim has sped up a Lot of my searches for specific control properties that I needed to replace
Excellent!! Score a minor hurdle for the day!
Yes, there is an Entities.json file in there with all the formulas and properties and controls.
It's a definite place for searching, but very challenging to equate to "where" in the App. It's a start though if none of the other advice helps.
Keep in mind, you really should only need to do this for collections that are not well documented. Variables and other things you can get directly in the edior through the View panel.
Ok. Found it. It was in the first place I looked, but I missed it. So I thought it wasn't there while looking everywhere else. It was, in fact, in the most obvious location, the OnVisible event of the page. Yes, I am embarassed. But still, PowerApps should have search capability! Turns out, your first answer to me was correct.
You can use the export function to download the App to your PC. You can then change the file extension to zip and see the files inside (mostly json). You can open these in a text editor (can't recall the file names, but there is one that contains all the formulas) and use the text editor's search functions - it is not exactly a friendly method, but might save a few hours hunting manually through all the properties of all the objects in the App.
Same here on the coding/development side. PowerApps was a stretch for me at first. Luckily I was not inheriting something and being thrown into it, so I could take a little time to digest the basics. It was really important for the reasons I mentioned last, so I needed to take the time at it.
But, you really have to throw out the notion that it is coding and development...it is all formulas.
This is why you can't "set" a label with text. Instead the label text has to have a formula to determine what it will be.
You can't even set a variable without using a formula (either Set or UpdateContext). And since it is a canvas screen app, the concept of visible and not visible and things on top of things was a real mind blower at first.
All I can say is that coming from a development experience I quickly adapted standard practices to how things should be done to maintain the app over time. There are some good "best practices" out there if you have time to find them.
I did find for me, that if I didn't fight it and dropped the "development" concept and soaked in the formula concept, it made all the difference in the world. Plus again...didn't inherit a bad App...sorry for you on that part.
There is lots of material out there to help with the journey and this forum is an excelent source of help as well.
I've been doing MVC/C# for 7+ years and a variety of other languages. I can create stuff in MVC about as fast as I can think. The issues with this environment, combined with the way these apps were made, make is pretty much unusable IMO. I can't even populate a label with text (using the proper nonintuitive method) presumably because there are other errors on the page. I'm getting some warning about database results might not read large data sets. I can't say the exact error because right now the page is stuck on "Undoing changes" as I'm typing this message. I've never been so unproductive, an entire day wasted and still no closer to finding a solution.
Actually based on that description...
The first thing to remember is that PowerApps is not code - it is formulas (just like Excel). So having a formula that stretches that long is a glaring sign of WTF...someone is not doing something right here!
Compared to C# (which I do a lot of development work in as well) it is TOTALLY different. There is a hump to get over in learning, once you do, it is incredibly easy compared to C# - and I feel pretty comfortable in VS and C#.
Yes, there are still some rough edges on the "editor" (I quote that because I don't really feel a browser is an effective editor). But, it is coming along.
The advantages of rapid app building and deployment over any device with the VAST amount of connectors and the reach through the entire "cloud" - it has a definitive edge.
For you - I am only sorry that you inherited a messy and (sounds like) poorly done App. That NEVER makes any tool fun to learn. I feel your pain!
Yes this app was the first application created by the interim developer, who is now gone. PowerApps was selected because it was thought to be 'easy' compared to a full programming language like C#, rather than it being the most appropriate tool for the job. I would consider a language with no search feature much harder.
I would have thought that the code editor having no scrollbar would be a clue that 100 lines of code would be excessive inside one onSelect command. Nevertheless, I'm not finding the object set in the onSelect command. It could be anywhere.
You can find all of your definitions and uses of variables in the View->Variables section.
If you are searching for a Collection, then it falls short there. There is no "definitions and uses" yet for Collections.
However, they're usually pretty easy to trace back.
I would first look in suspect places like OnVisible for a screen. If it is defined before that, then look on the OnStart of the app.
Unfortunately, with this one shortfall of the PowerApps editor, the problem starts back at the person who built the app. If they did wild things like put timers in to populate collections or special conditions that do it, then you are going to spend some time on it.
Not that this helps you, but may help others (as not to perpetuate the sins) - As a good practice, it is ALWAYS good to have at least ONE screen in your app that has documentation and Collection definition functions.
It's easy to throw Collect statements all around, but very difficult to track them back. If you put them all on one screen, you will never have to search again.
MS.Ragavendar
27
mmbr1606
14
Super User 2025 Season 1
EE-04041031-0
11