cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
jamestredree
Frequent Visitor

Submit Multi Page form to a SharePoint list

HI

 

I have a SharePoint Online list with loads of columns. I've created a custom form using PowerApps with multiple pages to make it easier for my users to complete in sections. 

 

When I go to save the form, I get the following

 

1. 3 separate submissions if I use this OnSave syntax

SubmitForm(SharePointForm1);SubmitForm(SharePointForm1_2);SubmitForm(SharePointForm1_3)

 

2. Only page 1 list columns saved to SharePoint list if i use this Syntax

SubmitForm(SharePointForm1)&&SubmitForm(SharePointForm1_2)&&SubmitForm(SharePointForm1_3)

 

I'm reading the Patch Function probably wont help my situation. 

 

Does anyone else use Powerapps custom forms with SharePoint Online?

 

What the hell am i doing wrong? I though this Powerapps product was supposed to make things easier to throw out easy automations. This is not easy. 

 

Bring back Infopath

1 ACCEPTED SOLUTION

Accepted Solutions
mdevaney
Super User
Super User

@jamestredree 

Hi there.   Is all of your data stored in the same table?  If yes, there is no need to create multiple forms.  You can use a single screen and show/hide datacards when the user clicks a button to goto the next section.  It will appear like there are multiple screens but there aren't.  An advantage of doing things this way is your only have to submit the form once.

 

Put this code in the OnVisible property of your screen

Set(currentPage,1)

 

Then for every datacard you want showing on Page 1 you must put this code in the visible property.  For any datacards showing on other screens use the appropriate page number

currentPage=1

 

Create a button to browse to the next page with the following properties.  We will say for this example there are 3 screens.

Text: "Next Page"
OnSelect: Set(currentPage,Min(currentPage+1,3)
Visible: currentPage<>3

 

Create another button to browse to the previous page with the following properties.

 

Text: "Previous Page"
OnSelect: Set(currentPage,Max(currentPage-1,1)
Visible: currentPage<>1

 

 

Finally create a button to Submit the form with the following properties

Text: "Submit Form"
OnSelect: SubmitForm(your_form_name_here)

 

Let me know if you have questions.

 

---
Please click "Accept as Solution" if my post answered your question so that others may find it more quickly. If you found this post helpful consider giving it a "Thumbs Up." 

View solution in original post

3 REPLIES 3
mdevaney
Super User
Super User

@jamestredree 

Hi there.   Is all of your data stored in the same table?  If yes, there is no need to create multiple forms.  You can use a single screen and show/hide datacards when the user clicks a button to goto the next section.  It will appear like there are multiple screens but there aren't.  An advantage of doing things this way is your only have to submit the form once.

 

Put this code in the OnVisible property of your screen

Set(currentPage,1)

 

Then for every datacard you want showing on Page 1 you must put this code in the visible property.  For any datacards showing on other screens use the appropriate page number

currentPage=1

 

Create a button to browse to the next page with the following properties.  We will say for this example there are 3 screens.

Text: "Next Page"
OnSelect: Set(currentPage,Min(currentPage+1,3)
Visible: currentPage<>3

 

Create another button to browse to the previous page with the following properties.

 

Text: "Previous Page"
OnSelect: Set(currentPage,Max(currentPage-1,1)
Visible: currentPage<>1

 

 

Finally create a button to Submit the form with the following properties

Text: "Submit Form"
OnSelect: SubmitForm(your_form_name_here)

 

Let me know if you have questions.

 

---
Please click "Accept as Solution" if my post answered your question so that others may find it more quickly. If you found this post helpful consider giving it a "Thumbs Up." 

Perfect! Thank you

Hi, your example above is helping me with a multi-page form I was trying to update via mobile phone app. I have a question relating to the layout of the form inputs/data Cards. Because I have way more cards than can fit on one page, how do you lay them out on the page to ensure they are visible when the user clicks on the Next Page button? Is it just a case of using size and position boxes in the Properties and layer them over the top of others, or should I be looking at a different method?

 

I have to add I am very new to Power Apps and just finding my way, so please have patience if I ask silly questions.

 

Many Thanks

Mike

Helpful resources

Announcements
Microsoft 365 Conference – December 6-8, 2022

Microsoft 365 Conference – December 6-8, 2022

Join us in Las Vegas to experience community, incredible learning opportunities, and connections that will help grow skills, know-how, and more.

Difinity Conference 2022

Difinity Conference 2022

Register today for two amazing days of learning, featuring intensive learning sessions across multiple tracks, led by engaging and dynamic experts.

European SharePoint Conference

European SharePoint Conference

The European SharePoint Conference returns live and in-person November 28-December 1 with 4 Microsoft Keynotes, 9 Tutorials, and 120 Sessions.

Power Apps Ideas

Changes to Ideas Coming

We are excited to announce a new way to share your ideas for Power Apps!

Top Solution Authors
Top Kudoed Authors
Users online (4,229)