Hello,
I have a SharePoint list for which I have developed a custom 4 screen PowerApps canvas. The canvas is connected to a single sharepoint list. How can I make it so that when someone opens an existing list entry that they are able to edit the item when Screen1 is an instructions page, screens 2 and 3 are meant to be the input screens?
Screen 1 is an instructions page with procedures, key contacts and a button to "create new entry" and "save". I'd like it to have an "Edit" button that allows for the user to edit if they have selected a pre-existing list item. It should also allow the user to go back to their input screen if they also happened to Create New Item and then go back to Screen1 but want to Edit again in Screen 2.
Screen 2 is a form that allows input of items and it has two sections, one section for form1 input and another section for "back to screen 1", "cancel" and "save". Screen 3 is the review section, which populates read-only fields from form1 along with some editable fields, also from form1 but only visible on screen 3.
Thanks so much!
Editing button on Screen 1 produces this error using the code above:
Thanks for replying David. I'm new to using PowerApps having come from Nintex. What is a Gallery and is it something I need to create before I add the first snippet of text to the Edit Button on Screen1? Do I need to create the context variable in Form1 or Screen1 or Screen 2? There is only one (1) form that is pieces out across different screens. Half of it is shown and editable on screen2, the other half is not editable. On screen3, the other half is editable and the first half is not.
Hello @zachlovescoffee ,
For your "Edit" button on screen 1,
First, you have to set your form in edit mode, then, you can use navigate to pass your selected item as a context variable in screen 2:
EditForm(Form2);
Navigate(Screen_2,ScreenTransition.Cover,{vctxSelectedItem: Gallery1.Selected})
In your Form2, set the Item parameter to your variable : vctxSelectedItem
Make sure your create button OnSelect have a navigate without Context variable :
NewForm(Form2);
Navigate(Screen_2,ScreenTransition.Cover)
if you want the user to be able to start filling out a form, interrupt to create a new entry and then resume entering the first item he was modifying, you will have to go through two different forms: One for the newform mode and one for editform mode, because the SubmitForm resets the form and all data entered and not submitted is lost.
Please click Accept as solution if my post helped you solve your issue. This will help others find it more readily.
WarrenBelz
146,605
Most Valuable Professional
RandyHayes
76,287
Super User 2024 Season 1
Pstork1
65,946
Most Valuable Professional