cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
kriggo15
Post Patron
Post Patron

Can I do this with forms?

I have an app that allows a user to come in and choose a service and based on the service chosen, the user then goes and fills in the appropriate forms. My issue is that we have north of 30 forms (all from different SharePoint lists) and right now, each one is on a separate screen. To complicate things further, these forms all have different questions. Below is a mocked up scenario to illustrate what I'd like the user experience to be.

 

What I'd like to see: The user chooses an option and is taken to a single screen that has the appropriate forms. The height/size of the screen is dynamic and renders each form 1 after another. 

 

Can this be done? If so, how? If not, are there other designs I should take into consideration?

 

formissue.png

13 REPLIES 13

Yes, I would recommend that you put this on a scrolling screen.

https://docs.microsoft.com/en-us/powerapps/maker/canvas-apps/add-scrolling-screen

 

I have attached an example of this.

 

Updates, based on what we already discussed.

  • Each Form is placed in a DataCard of the scrolling screen canvas
  • Each Canvas DataCard
    • Visible = Form visibility Boolean
    • Height = The 'embedded' Form's Height + locBuffer
  • Each Form's properties
    • Visible = Form visibility Boolean
    • Height = Last Data Card in form's Y + Height + locBuffer

 

This works pretty smoothly in my testing. The main catch is ensuring the Form's height is dynamic, and prevents scrolling on the Form itself. Then the User would only experience scrolling on the app screen itself. NOTE: You can and should copy and paste your existing forms into the Canvas data cards.

You will want to figure out how to also add controls to SubmitForm, and whatnot, but I'll leave that up to you.

View solution in original post

@kriggo15  

Just wondering if you have noticed any performance issues with that many Forms inside one app? I'm curious because I'm thinking of doing something similar but most of my users have good/intermittent connectivity which could impact performance with an app built like this.

Hey @Eelman, no user performance issues. Time to first screen is 5-7 seconds and I'm careful to only load the necessary sources on the first screen. The only place I've noticed any degradation is during development. Auto-saving takes quite a bit of time and will occasionally mess up formulas as I'm typing, then again my app has 57 screens in it, 35 of which are forms. Yes, 57 is way excessive, but this thing grew organically and got unwieldy.  That's how I came to this solution.

 

Using the information in this thread, I'll be able to eliminate over 30 screens and expect development performance to be back where it once was.

@kriggo15 

Thank you for the feedback, that's great intel.

 

One of my not-to-distant-future projects will be around 15-20 forms. I'm currently looking at options but am seriously considering using apps to open other apps by using the Launch function.

 

I've been working on taking variables across with the launch of another app thereby telling the newly opened app which app the user came from. A system of apps instead of screens, if you like. I'm hoping it'll be easier to manage due to the modularity of the design, not sure.

Helpful resources

Announcements
UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

Community Connections 768x460.jpg

Community & How To Videos

Check out the new Power Platform Community Connections gallery!

Welcome Super Users.jpg

Super User Season 2

Congratulations, the new Super User Season 2 for 2021 has started!

Carousel 2021 Release Wave 2 Plan 768x460.jpg

2021 Release Wave 2 Plan

Power Platform release plan for the 2021 release wave 2 describes all new features releasing from October 2021 through March 2022.

Users online (2,316)