cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
David123
Level: Powered On

Inconsistent behavior on one page

This is just one out of many issues I am facing with PowerApps:  I am supporting an app that does not work.  In order to do diagnostics, I placed a label in the corner of the page, and wanted to populate it with diagnostic text using commands like Set(status_label_text, "status: navigating...").  When I place a command like that on a simple button, nothing happens.

 

When I left the app in my browser overnight, and came back, that same button started working.  Then I closed and opened the app again and it stopped working again. 

 

1 ACCEPTED SOLUTION

Accepted Solutions
Super User
Super User

Re: Inconsistent behavior on one page

@David123I do feel your pains - or at least I did.  I came into PowerApps from a complete development background.  Visual Studio was my home.  The environment in PowerApps, quite something different. 

So, the first thing you have to roll back to is that PowerApps is touted as a "No Code" solution.  So, I hesitate to even call what I am doing - coding.  It's all about formulas and JSON behind the scenes. 

 

BUT...none of this really helps you right now.  It sounds like you inherited an App that may or may not be very well constructed.  But, perhaps I can shed a few bits of light on some of the specifics you mention.  Once you get used to a few of them, things really do fly well.

 

The underlined red errors.  First, these will make more sense when you know the formulas and statements.  In the meantime, you might notice that some of the red is "darker/thicker" red in some places.  That is telling you the issue is "there".  However, if you are not familiar with some of the basics, the errors can quickly get frustrating. 

 

Debugging is entirely possible - but not in the way you are used to (or at least that I was).  There is not run-time debugging of code or stop-points or anything like in a development environment...because it's not a development tool.  However, you can throw labels, new screens, other controls, buttons...whatever you want all over the place to catch, display, try and also troubleshoot problems you are having.  Since there is no compile needed, these things work well in edit or play mode.  Once you start to break apart issues and put them into separate components to test and debug, it's quite easy.

 

So your problem with ClearCollect( NavCat, NavCatTemplate).  

Here is where you start - first NavCat would be a collection .We know this from the formula for ClearCollect(collectionName, records) .  SO, go to your View->Collections screen in the editor and you will find all of your collections listed.  When you click on any of the collections, it will show you the collection structure and the first 5 items in it (if it has values).  Next, we know that NavCatTemplate is a record or list of records.  So, you have to determine if it's a datasource (will be listed in your View->Datasources) or if it is another collection (will be listed in your View->Collections) or another variable (will be listed in your View-Variables)

When dealing with variables, there are two types, Global and "screen scoped".  If you go to View->Variables you will see the global and each screen listed with its variables.  Clicking on any one will show you what kind it is, where it is defined, where it is used and where it is indirectly used.  Clicking on any of them will take you right to the place where it is used.

 

So, can you search the code? Not really, but sort of with the View->whatever areas.  Can you go to the definition of the objects? Yes, again View->whatever.  Debug Log? No, because it is not compiled and executed like a program, but you can create that concept easily. 

The code window does not even have a scroll bar - well, first, it's not a "code" window.  It's a formula bar (gotta keep remembering, this is not code development).  But, YES, it does have a scroll bar, BUT you have to open it up first.  You should see a dropdown arrow to the right of the formula bar.  This will open the window to see it all and scroll. 

There are 20 commands inside an IF statement that is technically one line of code where it is almost impossible to visually identify the beginning and end - I'd have to say that's just bad "development", but, one thing you will notice when you open up the formula bar, is that you can reformat the text (there is a button) this will break out nested statements and difficult to read one-liners.  

 

This development environment seems to be presented as being "simple", but without proper development tools, I don't see how this platform can ever work. It is simple.  It's not development in the traditional sense.  Once you get the underlying concepts, it has HUGE potential.  You have to sometimes throw out of your brain what you know and soak in how it is.  It will be much clearer at that point.

 

Hope this helps shed some light.  I didn't throw in pictures to this message because I believe you can find what I was referencing.  But, if you are stuck, post back and I'll clear things more.

 

 

_____________________________________________________________________________________
Digging it? - Click on the Thumbs Up. Solved your problem? - Click on Accept as Solution. Others seeking the same answers will be happy you did.

View solution in original post

6 REPLIES 6
Super User
Super User

Re: Inconsistent behavior on one page

@David123so are you saying you have a Button with the OnSelect action of Set(status_label_text, "status: navigating...") and a Label with the Text property set to status_label_text and that is not working?  Or are you expecting to try to set the label text directly in a button? - that you cannot do, but you can set a variable and have the label display that as its Text.

_____________________________________________________________________________________
Digging it? - Click on the Thumbs Up. Solved your problem? - Click on Accept as Solution. Others seeking the same answers will be happy you did.
David123
Level: Powered On

Re: Inconsistent behavior on one page

Hi, yes I am aware of PowerApps different way of setting text (like Excel).  I'm setting a variable when a button is clicked.  That variable is assigned to the text box.  It works on another page.  Just not this page.  This page seems corrupt overall.  Other things do not respond when they are clicked. I could create a list of a dozen other problems with PowerApps too.

Super User
Super User

Re: Inconsistent behavior on one page

It's possible that you are experiencing some other conflicting values or actions in the powerapp.  Although potentially painful, you might consider starting a new one and selectively copying and pasting the screens from the bad app to the new app, testing things along the way.

Beyond that...many apps here and never seen that behavior.

 

I have seen recently an issue where the "property" gets stuck.  I start typing in the property of a control (doesn't make a difference which one) and the hints and suggestions as I type stop working.  At that point the property is frozen.  If I go to another control and another property.  The old one is still in the editor.  If I then go to "safe" and try to save, save never saves and comes back.  I have to bail completely and I lose the work that I put in since the last autosave.  This is the only strange behavior I have seen lately...and I pretty much am editing powerapps around the clock.

_____________________________________________________________________________________
Digging it? - Click on the Thumbs Up. Solved your problem? - Click on Accept as Solution. Others seeking the same answers will be happy you did.
David123
Level: Powered On

Re: Inconsistent behavior on one page

Hi, I really appreicate your help.  I am forced to support an application that was created by someone who left our company.   This is one of many problems.  I'm seeing entire blocks of code underlined in red, with minimal information on the error and minimal-to-zero debugging capability.  If I rebuild the entire app, I'm afraid it would end up in the same situtation.

 

One other problem is, there is a line that says ClearCollect( NavCat, NavCatTemplate ); The error is "Invalid argument type".   There is almost no information provided in PowerApps to help diagnose this error.

Super User
Super User

Re: Inconsistent behavior on one page

@David123I do feel your pains - or at least I did.  I came into PowerApps from a complete development background.  Visual Studio was my home.  The environment in PowerApps, quite something different. 

So, the first thing you have to roll back to is that PowerApps is touted as a "No Code" solution.  So, I hesitate to even call what I am doing - coding.  It's all about formulas and JSON behind the scenes. 

 

BUT...none of this really helps you right now.  It sounds like you inherited an App that may or may not be very well constructed.  But, perhaps I can shed a few bits of light on some of the specifics you mention.  Once you get used to a few of them, things really do fly well.

 

The underlined red errors.  First, these will make more sense when you know the formulas and statements.  In the meantime, you might notice that some of the red is "darker/thicker" red in some places.  That is telling you the issue is "there".  However, if you are not familiar with some of the basics, the errors can quickly get frustrating. 

 

Debugging is entirely possible - but not in the way you are used to (or at least that I was).  There is not run-time debugging of code or stop-points or anything like in a development environment...because it's not a development tool.  However, you can throw labels, new screens, other controls, buttons...whatever you want all over the place to catch, display, try and also troubleshoot problems you are having.  Since there is no compile needed, these things work well in edit or play mode.  Once you start to break apart issues and put them into separate components to test and debug, it's quite easy.

 

So your problem with ClearCollect( NavCat, NavCatTemplate).  

Here is where you start - first NavCat would be a collection .We know this from the formula for ClearCollect(collectionName, records) .  SO, go to your View->Collections screen in the editor and you will find all of your collections listed.  When you click on any of the collections, it will show you the collection structure and the first 5 items in it (if it has values).  Next, we know that NavCatTemplate is a record or list of records.  So, you have to determine if it's a datasource (will be listed in your View->Datasources) or if it is another collection (will be listed in your View->Collections) or another variable (will be listed in your View-Variables)

When dealing with variables, there are two types, Global and "screen scoped".  If you go to View->Variables you will see the global and each screen listed with its variables.  Clicking on any one will show you what kind it is, where it is defined, where it is used and where it is indirectly used.  Clicking on any of them will take you right to the place where it is used.

 

So, can you search the code? Not really, but sort of with the View->whatever areas.  Can you go to the definition of the objects? Yes, again View->whatever.  Debug Log? No, because it is not compiled and executed like a program, but you can create that concept easily. 

The code window does not even have a scroll bar - well, first, it's not a "code" window.  It's a formula bar (gotta keep remembering, this is not code development).  But, YES, it does have a scroll bar, BUT you have to open it up first.  You should see a dropdown arrow to the right of the formula bar.  This will open the window to see it all and scroll. 

There are 20 commands inside an IF statement that is technically one line of code where it is almost impossible to visually identify the beginning and end - I'd have to say that's just bad "development", but, one thing you will notice when you open up the formula bar, is that you can reformat the text (there is a button) this will break out nested statements and difficult to read one-liners.  

 

This development environment seems to be presented as being "simple", but without proper development tools, I don't see how this platform can ever work. It is simple.  It's not development in the traditional sense.  Once you get the underlying concepts, it has HUGE potential.  You have to sometimes throw out of your brain what you know and soak in how it is.  It will be much clearer at that point.

 

Hope this helps shed some light.  I didn't throw in pictures to this message because I believe you can find what I was referencing.  But, if you are stuck, post back and I'll clear things more.

 

 

_____________________________________________________________________________________
Digging it? - Click on the Thumbs Up. Solved your problem? - Click on Accept as Solution. Others seeking the same answers will be happy you did.

View solution in original post

David123
Level: Powered On

Re: Inconsistent behavior on one page

I see you replied before I deleted some of my ranting (which only serves to embarass myself, despite it being completely valid IMHO).  I appreciate your detailed response.  The View->Collections page might be helpful at some point.  For now, I fixed the original problem by fixing the block of code that was underlined in red.

It turns out, the error was on a prior line.  It was building a table with one element that existed in one row but not in the other rows.  I removed that unneeded element, and the entire block of code cleared up.

 I'll re-read your post next time I have trouble.  There are other frustrating issues with PowerApps that I don't really need to address now (like it's hard to navigate the apps on the home page(s)).  But anyway, Thanks again.

 

Helpful resources

Announcements
thirdimage

Power Automate Community User Group Member Badge

Fill out a quick form to claim your user group badge now!

sixthImage

Power Platform World Tour

Find out where you can attend!

Power Platform 2019 release wave 2 plan

Power Platform 2019 release wave 2 plan

Features releasing from October 2019 through March 2020

fifthimage

Microsoft Learn

Learn how to build the business apps that you need.

Top Kudoed Authors (Last 30 Days)
Users online (5,179)