We are trying to save the data entered in the PowerApps Form to a SharePoint List. Now when we Insert an Edit Form to the screen, it shows all the fields from the list under one screen. Is it possible to have some fields from the list show up in another screen?
If we try to create a new screen and Insert an Edit Form, the entries would show up as two Items in the list since there are two Edit Forms one for each screen. Is it possible to have one edit form for multiple screens so that all the entries from the form get saved as one list Item?
Solved! Go to Solution.
@Anonymous First I added a Data Source then I activated the Insert tab ->Forms->EditForm and under the properties pane, selected the data source.
Here is my SharePoint List
HI @ricky23 ,
Do you want to split the Edit form into multiple screens, and submit all Edit forms data into single one item in your SP list once time?
Based on the needs that you mentioned, I think PowerApps could achieve your needs. On your side, you could consider take a try to add one Edit form (Form1, Form2, Form3, ...) within each screen you want to display form data. Set the FormMode property of All Edit forms to FormMode.Edit. Within each Edit form in multiple screens, enable proper Data cards you want to display.
Then add one "Next" button within each screen except for the last screen (which contains the Edit form), set the OnSelect property to following:
Within the last screen which contains the Edit form, add a "Submit" button, set the OnSelect property of the "Submit" button to following:
Patch( 'YourSPList', Defaults('YourSPList'), Form1.Updates, Form2.Updates, Form3.Updates, Form4.Updates, ... )
More details about split Edit forms into multiple screens, and submit all Edit forms data into single one item in your SP list once time, please check and see if the response within the following thread would help in your scenario:
Hi @v-xida-msft ,
I'm working throught your suggestion above and have observed the following:
When using Patch to submit multiple forms, the OnSuccess/OnFailure logic needs to be handled differently.
Example: I tried putting this on both forms OnSuccess, but it does not catch an error (Required field not populated).
), Navigate(scr_success, Cover), false
Do you have any insights on how to tie the forms OnSuccess/OnFailure logic together?
but how can i save edited data form the patch function inserted a new row.but i want to update the data how can do.can you please share the code?
This worked great for me for new records, as I know the Patch(Defaults) creates a new record. What should be used when editing an existing record from the gallery? The same Patch(Defaults) call, I found, would create a new merged record with data from the original item combined with changes, and leave the original one alone. Any suggestions for a newbie?
Thank you, in advance!
Steve in Spain
The patch solution didn't work for me either.
In the end I tried this and it worked
(Note: in my case these are forms on different data cards not screens (selected using tabs) but its worth a try on screens if thats how your forms are distributed)
In the OnSelect property of the save Button use the following,
Submitform('Name of first form');Submitform('Name of first form');Submitform('Name of first form')
This seems to work even if you copy the button to different cards
Hi all - apologies for bringing up an old thread. I am using the suggestions above to spread my Edit Form fields across multiple screens. The solution of using Submitform('Name of first form');Submitform('Name of second form');Submitform('Name of third form') is working, except for the last form to be submitted. In this case, the last form clears its contents before the submission goes through, resulting in a blank return. This is the case even if I change the order in which the forms submit - it is always the last form which clears. Any ideas why this could be happening? Thank you from a newbie! Just started using PowerApps today!!!
If I want to edit the form values and save the datas in same row....Then how can we achieve this.......
For better understanding:
I have added multiple forms for filling the data and submit all the forms at a time using above patch function......If I need to edit the submitted data without adding as a new row in dataverse what can I do......Thanks in advance
Hi, thanks for your solution, In our case, we have multiple forms in single screen and each form is linked to different tables in datasource and working fine, but if i want to enter only details in form 1 for now and later enter remaining details in other forms, it should save in a single record - how to achieve this?
If you want to update the records in your dataverse without taking a new row whenever you are submitted the form ....You just need to give the condition for storing the data.....
Means ....If the particular record is already there in dataverse you just need to update the record through the patch function otherwise it will create a new record .
Example : Consider you have one field ....like Employee name in form1....now you give the condition like....
If( txtfield.Text in DataverseTableName.Columnname , Through patch function update the record , otherwise Create a record in dataverse through the patch function)
Here txtfield means the name of the textfield for enter the employee name in form1
Join us for the next call on August 17, 2022 at 8am PDT.
The first Microsoft-sponsored Power Platform Conference is coming in September. 100+ speakers, 150+ sessions, and what's new and next for Power Platform.