cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
jcollins
Advocate II
Advocate II

Using Customized Form with multiple screens. Patching creates new item instead of updating current

I am using the a customized form with 2 screens to collect some data. When the users click Save, i want the data on both screen to create 1 record with all the data from both screens.  I learned that just by clicking Save only saved the data on the last screen only,  so I needed to also Patch the data on the 1st screen to the same record. 

 

This is my onSave: 

Patch('Credit Card Auth Form',Defaults('Credit Card Auth Form'), SharePointForm1.Updates, SharePointFormPay.Updates,);ResetForm(SharePointForm1);ResetForm(SharePointFormPay);RequestHide()

 

This works when a user creates a New form. All data gets submitted to a record. 

 

But now, if that record needs to be modifed, what it does is simply creates a New record with JUST the changed field instead of modifying the existing record.   

 

My questions are: 

1. do i need to do a patch for both screen or just the first one? 

2. How can i prevent the issue of a new record being created when i just want to edit the one i'm in? 

3. Is everthing just harder when using a customize form? Should i just create an app from scratch so it has separate view/edit/new screens?

 

Thanks! 

Joe

13 REPLIES 13

I did not actually mark this as the solution.  While it might seem to be a viable workaround, it didn't really fit my use case because it doesn't remove the "Save" button at the top of the form. So now there is a Save button and the 2 buttons that Kris suggests which could be very confusing to the end user. 

 

My question is still out there: @v-xida-msft Can you not use an IF statement in the OnSave property of a Customized Form?  It seems to ignore it as the previous suggested solution was much more apprpriate. 

@jcollins did you ever get a solution to this?

 

I've just started Power apps and having the same issue as you.

 

I have 2 screens that collect the same data from the same list. ScreenNew/FormNew and ScreenImpact/FormImpact. This reason for this to make it easier for the user to understand what each screen wants from the user.

 

It will save the record but on an existing line, it will never create a new entry? 

 

Any help would be fantastic.

MK1
Helper IV
Helper IV

Hi,

@jcollins@Matt-0365@v-xida-msft@Drrickryp

In my scenario, 

From screen1--> edit screen1 

Dropdown1=A,B,C

There are  3 different edit screens that will be navigated based on the the options they slect on dropdown1

There are couple of columns same in all there edit screens and some of them may wary.

So What's my bug is 

When a user selects options from Dropdown1 i waqs able to navigate them to different screens and then save the form.

But when i'm trying to view the item that's already created with data, i was only able to see the screen where user will be able to slecet Options on dropdown1. can i know how to fix this how can a user view ,edit and save data on different edit screens.

Thanks in advance

MK

The proposed workaround solution involves putting submit buttons on the screen and hoping users don't touch the "real" SharePoint buttons at the top that are baked in (thus the use of the term "SharePointIntegration"). Unless I'm missing something, this appears to not be an acceptable solution as it is likely that users will still press the SharePoint "Save" button resulting in loss of data and a confusing user experience. In any event, the entire SharePoint customized forms experience here has been buggy, susceptible to browser differences and prone to get wonky when browser's update are released - spending so much time tracking down little nit-picky UI issues with forms is disappointing to say the least.

 

For what its worth in case anyone else reads this thread, the solution below seems to provide an acceptable result using two forms, SharePointFormApplicationand & SharePointFormManage.

 

SharePointIntegration's OnSave property

RequestHide(); //need this or the form stays open

//submit multiple forms at once on SP customized form
If(
    Text(SharePointFormApplication.Mode)="0",         //works as expected 
    //!SharePointFormApplication.Mode = FormMode.New, //condition fails to recognize NewForm state
    //!IsEmpty(SharePointIntegration.Selected),       //condition fails to recognize a new item as having empty SP integration & creates dup
    
    //if condition is true - i.e NOT creating a new item
    Patch(
        'Nurse Research Mentorship Applications',
        SharePointIntegration.Selected,  //use to ID the item being edited
        SharePointFormApplication.Updates,
        SharePointFormManage.Updates
    );
    

    //if condition is false - i.e we ARE creating a new item
    Patch(
        'Nurse Research Mentorship Applications',
        Defaults('Nurse Research Mentorship Applications'), //use when creating new item
        SharePointFormApplication.Updates,
        SharePointFormManage.Updates
    );
    
)

 

 

Helpful resources

Announcements
Power Platform Conf 2022 768x460.jpg

Join us for Microsoft Power Platform Conference

The first Microsoft-sponsored Power Platform Conference is coming in September. 100+ speakers, 150+ sessions, and what's new and next for Power Platform.

May UG Leader Call Carousel 768x460.png

June User Group Leader Call

Join us on June 28 for our monthly User Group leader call!

PA Virtual Workshop Carousel 768x460.png

Register for a Free Workshop

This training provides practical hands-on experience in creating Power Apps solutions in a full-day of instructor-led App creation workshop.

PA.JPG

New Release Planning Portal (Preview)

Check out our new release planning portal, an interactive way to plan and prepare for upcoming features in Power Platform.

Top Solution Authors
Users online (1,414)