cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Digital
Responsive Resident
Responsive Resident

Patch collection to update existing SharePoint list records using ForAll

I want to patch a local collection to update existing data in a SharePoint list. The user makes some changes which get saved to a collection.

 

In the past I've successfully used the following method, but now I'm getting a runtime error:

 

error.png

 

PowerApps is indicating a problem with the following line of code:

 

First(Filter( MyList, ID = ID )

 

ForAll(
    colSavedApps,
    If(
        !IsEmpty(colSavedApps),
        Patch(
            MyApps,
            First(Filter(MyApps,ID = ID)),
            {
                Title: Title,
                spField_1: spField_1,
                spField_2: spField_2
             }
        )
    )
);

 

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
yashag2255
Dual Super User II
Dual Super User II

Hey @Digital 

 

Can you try to update the expression as:

ForAll(
RenameColumns(colSavedApps,"ID","ID1"),
If(
!IsEmpty(colSavedApps),
Patch(
MyApps,
First(Filter(MyApps,ID = ID1)),
{
Title: Title,
spField_1: spField_1,
spField_2: spField_2
}
)
)
);

Hope this Helps!

 

If this reply has answered your question or solved your issue, please mark this question as answered. Answered questions helps users in the future who may have the same issue or question quickly find a resolution via search. If you liked my response, please consider giving it a thumbs up. THANKS!

View solution in original post

7 REPLIES 7
PowerAddict
Super User II
Super User II

From where are you getting your second ID value in the filter function? 

 

---
If you like this reply, please give kudos. And if this solves your problem, please accept this reply as the solution. Thanks!

Hardit(Haman)

Digital
Responsive Resident
Responsive Resident

I thought from the local collection. There is a column called ID in there.

 

The local collection is pretty much a copy of the SharePoint list, but the user can select/deselect options. I want to be able to update the list once they've made their changes and hit save. I can't use a form for this.

I think you may need to specify the two ID columns slightly differently from each other. When you start typing in ID, what suggestions do you get?

---
If you like this reply, please give kudos. And if this solves your problem, please accept this reply as the solution. Thanks!

Hardit(Haman)
Digital
Responsive Resident
Responsive Resident

@PowerAddict ,Thanks for your reply.

 

On the left side of the condition, I get column name suggestions. On the right side I get suggestions of everything in my app - element properties, galleries, images etc, as well as column names.

 

My collection is also the data source for a gallery that displays data. Do I need to add the ID to my collection in a different column maybe? Would I do this by renaming it or adding a column?

 

 

Digital
Responsive Resident
Responsive Resident

I should add that if I hardcode the ID in the right side it patches. So the only issue is getting the ID of each gallery item in there so it matches the correct record to be patched.

 

First(Filter(MyApps,ID=469))
yashag2255
Dual Super User II
Dual Super User II

Hey @Digital 

 

Can you try to update the expression as:

ForAll(
RenameColumns(colSavedApps,"ID","ID1"),
If(
!IsEmpty(colSavedApps),
Patch(
MyApps,
First(Filter(MyApps,ID = ID1)),
{
Title: Title,
spField_1: spField_1,
spField_2: spField_2
}
)
)
);

Hope this Helps!

 

If this reply has answered your question or solved your issue, please mark this question as answered. Answered questions helps users in the future who may have the same issue or question quickly find a resolution via search. If you liked my response, please consider giving it a thumbs up. THANKS!

View solution in original post

Digital
Responsive Resident
Responsive Resident

@yashag2255 ,

It worked! Thank you so much.

Helpful resources

Announcements
PA User Group

Welcome to the User Group Public Preview

Check out new user group experience and if you are a leader please create your group

secondImage

Demo Extravaganza is Back!

We are excited to announce that Demo Extravaganza for 2021 has started!

MBAS on Demand

Microsoft Business Applications Summit sessions

On-demand access to all the great content presented by the product teams and community members! #MSBizAppsSummit #CommunityRocks

Power Apps June 2021

June Power Apps Community Call

Don't miss the call this month on June 16th - 8a PDT

Top Solution Authors
Top Kudoed Authors
Users online (68,550)