cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
keathley
Advocate III
Advocate III

Toggle Visibility BUG In Improved App Rendering (final validation) Mode

I have an app that has been working correctly, however recently toggle visibility has stopped working (not sure which update caused this; I will try to do some more research to narrow that down.)  I do know that the issue exists in 3.18091.15 (possibly earlier versions as well).

 

The app has a field / toggle that when true shows other fields / toggles.  Such that if "Other Permits" is true / yes, then a list of other toggles for the various permits is shown.  By default Other Permits is false / no and the other fields are hidden (as shown below).

IMG_9611e.png

Upon toggling the field to yes the other fields are shown (as shown below).

IMG_9612e.png

 

Upon toggling the field to no, and then yes again the other fields are shown, but their toggles are not (mostly, one toggle does appear) (as shown below).

IMG_9613e.png

Setting Improved App Rendering off resolves the issue.  Setting it back on again reintroduces the issue.

 

For reference, the visible field on one of these toggles simply references the Other Permits toggle's value.

OtherPermitRequiredSwitch.Value

This issue is witnessed on an iOS device.  It does not occur in a web browser.

 

Any help would be greatly appricated.

 

Joey

40 REPLIES 40

@mr-dang Okay I have finally narrowed this down, and I am certain it is a bug at this point.  I have also reproduced the issue in a new app.  I will comment on this again at the end of the post to explain my statement (the bug may be in app creation and not render).  Appologies up front for the lenght of the post.  I believe it would help to document step by step how to recreate the issue.

 

1) Create a new SharePoint list (5 columns, each a yes/no with default of no; I forgot to turn off allow attachments, so I will deal with it in a later step). 

SharePointList.png

2) Create a PowerApp from the SharePoint -> PowerApps -> Create an App menu item

CreateAppMenuItem.png

3) On the Edit screen, remove / delete the Attachments card.

Attachments.png

 

4) Find the name of the first toggle (here we will see it is DataCardValue8)

FirstToggle.png

 

5) Set the visible property of each of the t2-t5 datacards to the following:

DataCardValue8.Value

Each of t2, t3, t4 and t5 are now hidden:

VisibleSet.png

 

6) Hold ALT and toggle t1 to "on"; making t2-t5 visible again

t1on.png

 

7) Select the t2 data card, and review the "Height" property on both the formula bar and the properties panel.  Note that they have 50 and 122 respectively. I believe this is the root of the problem.

SizeDiscrepancy.png

 

😎 Select the t2 label (not the data card) and note that its width is 

Parent.Width - 60

NoteWidth.png

 

9) Note that my next couple of screenshots were done out of order (you will note that the label has already moved to the right even though it should not be yet by step order).  Follow the step not the image! 

Select t2's toggle button, and in the Properties panel on the right, change the Position X value from 30 to 100.

setxontoggle.png

 

10) Select the t2 label, and in the Properties panel on the right, change the Position X value from 30 to 100.

changeX.png

Note that the border for the t2 label now extends beyond the canvas.

 

11) Using your mouse drag the width of the t2 label back inside the canvas.  I do not know if it matters or not, but I also slightly changed it's height and then tried to put it back to the original height.

dragwidth.png

Note that its Width property is now your new width.  For me it is:

375

Side note that if you change the width formula instead of dragging, it does not seem to cause the issue.  I was able in one test to change the formula from 

Parent.Width - 60

to

Parent.Width - 60 - 100

and not reproduce the issue.

 

12) Save and publish the app.  Open the app on an iOS device (2 times; open close, open again allowing the app to update to the latest version if you have previously opened it).

 

13) Use the + icon to navigate to the edit screen

IMG_9686.PNG

 

14) Select the t1 toggle and turn it on.  Note that everything looks as it should at this point.

IMG_9685.PNG

15) Select the t1 toggle and turn it off

IMG_9686.PNG

 

16) Select the t1 toggle and turn it on again.  At this point my screenshot may be off.  I believe I missed a shot where it would have been missing the t2 toggle.  However, note from this one that t3, t4, and t5 are missing.  For your view all may be missing.  Realizing I missed a screenshot, I repeated steps for t3 to correct it.  You will see later shots showing this.

IMG_9688.PNG

 

17) Edit the app again, change the Height property of the t2 and t3 data cards to

122


fixheight.pngfixt3height.png

 

18) Save and publish again.  Close and reopen the app on an iOS device 2 times.  Repeat steps to toggle t1 on, off and on again.  Note that both t2 and t3 are fixed now.  Repeat steps to fix t4 and t5 if you like.

IMG_9689.PNG

 

Commentary:  I believe the root of the problem is that the default Height of the toggle data card is in a conflicted state.  The formula bar says 50, the properties window says 122.  If you then change the X value of the toggle (which has references to its parent's Y and Height properties) and then afterwards change the X value of the label, followed by dragging the label's width around a bit, you will introduce the issue.  From there the issue occurrs on all of the other toggles that have the same visible formula.  I suspect using the drag width feature is changing another property that I did not notice / pick up on.  At this point the height of 50 (which is clearly to small) becomes and issue, causing the other toggles to be hidden.

 

Okay, so is this a bug?  Clearly I can fix the issue by addressing the height of the data cards (setting them to a value that is not less than the needed height).  However, I believe it is a bug for 2 reasons:

 

1) Previous render mode handled, showing the full card.  One could argue that the previous render mode had the bug and should have been cutting the card off 🐵

 

2) The default height clearly should match the actual height of the rendered card.  I did not pick heights of 50 and 122, these came from app creation (the bug is likely that the default height should probably have matched the property window).  It's not clear to me how these can be disconnected to begin with...

 

Hopefully that is enough detail for you to trace down the root cause.  Again, this issue only exists on the Improved App Rendering mode.  

 

Let me know if you need anything more,

Joey

 

 

Thanks for the very detailed steps and screenshots, @keathley. I've linked this to the same ticket BUG 3070219 and notified the team. I'll get back with any updates.

Microsoft Employee
@8bitclassroom

@keathley

Our team was not able to replicate this on iOS from your steps. It would help to know the exact model of your iOS device and its version.

 

Here's some more specifics:

Regarding the discrepancy in height values (50 vs 122), this is a bug in the properties panel. The value shown in the Advanced panel and formula bar is the desired value (50). The value shown in the properties panel is the actual value (122), which takes into account the autoheight of the Label. They should be the same (50) in all panels, even though the actual height is bigger.

 

For data cards that contain autoheight elements, the Height property is actually for minimum height.

 

Microsoft Employee
@8bitclassroom

@mr-dang This was witnessed on an iPhone 6 plus (model MKTY2LL/A) running 11.x, as well as 12.0.1 (updated today to try to resolve another issue).

 

Regarding the autoheight comment you made, I worked around the issue in my app by setting the height to each of the affected toggle's data cards to 112.  The issue is not present when I do this.

 

I would just note that when reproducing it in a new app myself, I had one try on the first toggle that did not produce the issue.  When I tried again on the 2nd toggle it did.  I questioned the order of my steps.  I ended up with feeling that you need to "move" the toggle before you move the label.  I tried documenting this in my steps, but if you followed the images instead of the text content you may have fallen into what I did on the first round.  And of course that could have had nothing to do with it lol.

 

thanks,

Joey

I wonder if it is a problem with the toggle control or the form. Have you tried with checkboxes instead of toggles? Both have the same functionality.

I reported this problem earlier this year in June and had no joy. I posted 2 posts and both where kind of ignored.

Post 1

Post 2

This is a general problem when working with "hidden" fields. It's really easy to replicate this bug. I've done it three times today using different SharePoint Lists and different iPhones. When I tested on a Windows Phone, the bug does not occur.

This is the process I went through to replicate this bug:

  1. Create a SharePoint List
  2. Create a few fields. They can be plain single line text fields.
  3. Go to PowerApps and create an App from the SharePoint List you created above and wait for it to generate the App.
  4. Go to the EditScreen and select the EditForm
  5. Reduce the size of the EditForm from the top of the screen so that you can add some buttonsEditScreen.PNG
  6. Create three buttons at the top called General, Status, Files. This is just an example. Any names will do.
  7. Enter the formula Set(tabSelect,"General") on each button's OnSelect property. Change the formula so that it correspondes with the button's name for the buttons, Status and Files.
  8. Expand the EditForm to show all the data cards.
  9. Set the Visible property of a few of the DataCards to If(tabSelect="General",true,false)
  10. Set the Visible property of a few of the DataCards to If(tabSelect="Status",true,false)
  11. Set the Visible property of a few of the DataCards to If(tabSelect="Files",true,false)
  12. Set the EditScreen's OnVisible property to Set(tabSelect,"General")

That's it! Nothing else needs to be done. Save and Publish. Check the App by running it in a browser. As you click on each button, the corresponding "hidden" fields will be made visible while others are made hidden. In it's basic format, this is how you would create the illusion of tabs in an standard EditForm.

Then run the App on an iPhone. The first time you go in, the fields show fine on the "General Tab". Press the Status or Files buttons and the data portion of the fields no longer show.

Here are some screenshots of the App on the iPhone. First screenshot is when you first go to the EditScreen. Second screenshot is once you press either the Status or Files button and then press the General button again.

 

When the EditScreen is first opened.When the EditScreen is first opened.Field Data no longer showingField Data no longer showing

As mentioned, if you go to the App Settings, Advanced Settings and turn off "Improve app rendering (final validation)" and save and publish the app. The problem goes away on an iPhone and the app works as expected.
I'm almost certain this is a bug.

Tested on

iPhone 8

iPhone PowerApps Version - 3.18103.21

iPhone iOS - 12.0.1 (16A404)

 

For backward compatibility, I also tested on

iPhone 6

iPhone PowerApps Version - 2.0.720

iPhone iOS - 10.3.3 (14G60)

Just got off the phone with Microsoft. They have confirmed that it's a bug and it's currently being reviewed.

The workaround that they have put in place is to use the setting under the App - App Settings, Advanced Settings, turn off "Improve app rendering (final validation)".

Thanks @eddyg for contributing to this!  Apprecite the follow up that it is being worked as a bug.

 

thanks,

Joey

Thanks @eddyg for the detailed steps. I am able to reproduce the bug now.

 

The cause is that the Form is not calculating the height of autoheight controls correctly. It uses the DataCard.Height property. When creating an app from a Sharepoint list, DataCard.Height is set to 50 by default, which is too short to show the entire contents of the card. Normally, DataCard.Height will be ignored if there are autoheight controls inside the card, but improved app rendering does not do this when card visiblity is changed.

 

The workaround at the moment is to set a larger value to DataCard.Height or a formula like DataCard.Height = DataCardValue.Height + DataCardKey.Height.

Thanks @tahoon.

 

Using this formula for the DataCard.Height seemed to have worked better for me:

ErrorMessage.Y+ErrorMessage.Height

 

At least I know I'm not going crazy :-).

Helpful resources

Announcements

Community will be READ ONLY July 16th, 5p PDT -July 22nd

Dear Community Members,   We'd like to let you know of an upcoming change to the community platform: starting July 16th, the platform will transition to a READ ONLY mode until July 22nd.   During this period, members will not be able to Kudo, Comment, or Reply to any posts.   On July 22nd, please be on the lookout for a message sent to the email address registered on your community profile. This email is crucial as it will contain your unique code and link to register for the new platform encompassing all of the communities.   What to Expect in the New Community: A more unified experience where all products, including Power Apps, Power Automate, Copilot Studio, and Power Pages, will be accessible from one community.Community Blogs that you can syndicate and link to for automatic updates. We appreciate your understanding and cooperation during this transition. Stay tuned for the exciting new features and a seamless community experience ahead!

Summer of Solutions | Week 4 Results | Winners will be posted on July 24th

We are excited to announce the Summer of Solutions Challenge!   This challenge is kicking off on Monday, June 17th and will run for (4) weeks.  The challenge is open to all Power Platform (Power Apps, Power Automate, Copilot Studio & Power Pages) community members. We invite you to participate in a quest to provide solutions in the Forums to as many questions as you can. Answers can be provided in all the communities.    Entry Period: This Challenge will consist of four weekly Entry Periods as follows (each an “Entry Period”)   - 12:00 a.m. PT on June 17, 2024 – 11:59 p.m. PT on June 23, 2024 - 12:00 a.m. PT on June 24, 2024 – 11:59 p.m. PT on June 30, 2024 - 12:00 a.m. PT on July 1, 2024 – 11:59 p.m. PT on July 7, 2024 - 12:00 a.m. PT on July 8, 2024 – 11:59 p.m. PT on July 14, 2024   Entries will be eligible for the Entry Period in which they are received and will not carryover to subsequent weekly entry periods.  You must enter into each weekly Entry Period separately.   How to Enter: We invite you to participate in a quest to provide "Accepted Solutions" to as many questions as you can. Answers can be provided in all the communities. Users must provide a solution which can be an “Accepted Solution” in the Forums in all of the communities and there are no limits to the number of “Accepted Solutions” that a member can provide for entries in this challenge, but each entry must be substantially unique and different.    Winner Selection and Prizes: At the end of each week, we will list the top ten (10) Community users which will consist of: 5 Community Members & 5 Super Users and they will advance to the final drawing. We will post each week in the News & Announcements the top 10 Solution providers.  At the end of the challenge, we will add all of the top 10 weekly names and enter them into a random drawing.  Then we will randomly select ten (10) winners (5 Community Members & 5 Super Users) from among all eligible entrants received across all weekly Entry Periods to receive the prize listed below. If a winner declines, we will draw again at random for the next winner.  A user will only be able to win once overall. If they are drawn multiple times, another user will be drawn at random.  Individuals will be contacted before the announcement with the opportunity to claim or deny the prize.  Once all of the winners have been notified, we will post in the News & Announcements of each community with the list of winners.   Each winner will receive one (1) Pass to the Power Platform Conference in Las Vegas, Sep. 18-20, 2024 ($1800 value). NOTE: Prize is for conference attendance only and any other costs such as airfare, lodging, transportation, and food are the sole responsibility of the winner. Tickets are not transferable to any other party or to next year’s event.   ** PLEASE SEE THE ATTACHED RULES for this CHALLENGE**   Week 1 Results: Congratulations to the Week 1 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Community MembersNumber of SolutionsSuper UsersNumber of Solutions @anandm08  23 @WarrenBelz  31 @DBO_DV  10 @Amik  19 AmínAA 6 @mmbr1606  12 @rzuber  4 @happyume  7 @Giraldoj  3@ANB 6 (tie)   @SpongYe  6 (tie)     Week 2 Results: Congratulations to the Week 2 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Community MembersSolutionsSuper UsersSolutions @anandm08  10@WarrenBelz 25 @DBO_DV  6@mmbr1606 14 @AmínAA 4 @Amik  12 @royg  3 @ANB  10 @AllanDeCastro  2 @SunilPashikanti  5 @Michaelfp  2 @FLMike  5 @eduardo_izzo  2   Meekou 2   @rzuber  2   @Velegandla  2     @PowerPlatform-P  2   @Micaiah  2     Week 3 Results: Congratulations to the Week 3 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge.   Week 3:Community MembersSolutionsSuper UsersSolutionsPower Apps anandm0861WarrenBelz86DBO_DV25Amik66Michaelfp13mmbr160647Giraldoj13FLMike31AmínAA13SpongYe27     Week 4 Results: Congratulations to the Week 4 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge.   Week 4:Community MembersSolutionsSuper UsersSolutionsPower Apps DBO-DV21WarranBelz26Giraldoj7mmbr160618Muzammmil_0695067Amik14samfawzi_acml6FLMike12tzuber6ANB8   SunilPashikanti8

Check Out | 2024 Release Wave 2 Plans for Microsoft Dynamics 365 and Microsoft Power Platform

On July 16, 2024, we published the 2024 release wave 2 plans for Microsoft Dynamics 365 and Microsoft Power Platform. These plans are a compilation of the new capabilities planned to be released between October 2024 to March 2025. This release introduces a wealth of new features designed to enhance customer understanding and improve overall user experience, showcasing our dedication to driving digital transformation for our customers and partners.    The upcoming wave is centered around utilizing advanced AI and Microsoft Copilot technologies to enhance user productivity and streamline operations across diverse business applications. These enhancements include intelligent automation, AI-powered insights, and immersive user experiences that are designed to break down barriers between data, insights, and individuals. Watch a summary of the release highlights.    Discover the latest features that empower organizations to operate more efficiently and adaptively. From AI-driven sales insights and customer service enhancements to predictive analytics in supply chain management and autonomous financial processes, the new capabilities enable businesses to proactively address challenges and capitalize on opportunities.    

Updates to Transitions in the Power Platform Communities

We're embarking on a journey to enhance your experience by transitioning to a new community platform. Our team has been diligently working to create a fresh community site, leveraging the very Dynamics 365 and Power Platform tools our community advocates for.  We started this journey with transitioning Copilot Studio forums and blogs in June. The move marks the beginning of a new chapter, and we're eager for you to be a part of it. The rest of the Power Platform product sites will be moving over this summer.   Stay tuned for more updates as we get closer to the launch. We can't wait to welcome you to our new community space, designed with you in mind. Let's connect, learn, and grow together.   Here's to new beginnings and endless possibilities!   If you have any questions, observations or concerns throughout this process please go to https://aka.ms/PPCommSupport.   To stay up to date on the latest details of this migration and other important Community updates subscribe to our News and Announcements forums: Copilot Studio, Power Apps, Power Automate, Power Pages

Users online (582)