web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Apps / Patching Nested Child ...
Power Apps
Answered

Patching Nested Child Gallery back to SharePoint

(0) ShareShare
ReportReport
Posted on by 1,512

@RandyHayes @WarrenBelz 

 

Rather than keep beating my head against a wall I am begging for help.

 

I have a canvas app that has a form that creates a record in one SharePoint list.

 

I have Gallery1 that is a list of Hazards that creates a collection with this code on the onselect of a button in the gallery :

Select(Parent);
If(
 IsBlank(LookUp(colParentGalleryData, Title = ThisItem.Title)),
 Collect(
 colParentGalleryData, 
 { 
 Title: ThisItem.Title, 
 Examples: ThisItem.Examples,
 JSRAction: "Safe", // Placeholder
 HazardIssue: "None", // Placeholder
 FurtherAction: "None", // Placeholder
 CRNumber: "0", // Placeholder
 Recognition: "", // Placeholder
 OverallComments: "", // Placeholder
 Data: Table() // Initialize with an empty table
 }
 ), 
 RemoveIf(colParentGalleryData, Title = ThisItem.Title)
);


this is where the frustration starts.  I have a parent/child nested gallery that is tied to the collection referenced above.

 

This is on the ParentGallery

SortByColumns(
 GroupBy(
 colParentGalleryData,
 "Title",
 "Examples",
 "Data"
 ),
 "Title",
 SortOrder.Ascending
)

And this is on the ChildGallery

ThisItem.Data

When the form and all of the gallery information is completed I have two things that should be happening.

Dorinda_0-1694121791383.png

 

The submit button on the screen has this:

 

Patch(
 'Job Site Review(Testing)',
 LookUp('Job Site Review(Testing)', ID = CurrentFormID),
 {
 SafetyMeetingGroup: DataCardValue1.Selected.Title, 
 'Location Choice': DataCardValue4.Selected.Value,
 'Location of Observation': DataCardValue7.Selected.ChildLocation
 }
);

 

and on the OnSuccess of the form I have this 

ClearCollect(colChildItems, ChildGallery.AllItems);

// Loop through each parent record
ForAll(
 ParentGallery.AllItems,
 
 Patch(
 'Job Site Review(Testing)',
 Defaults('Job Site Review(Testing)'),
 {
 'Reviewer 1': {
 '@odata.type': "#Microsoft.Azure.Connectors.SharePoint.SPListExpandedUser",
 Claims: "i:0#.f|membership|" & DataCardValue2.Selected.Email,
 DisplayName: DataCardValue2.Selected.DisplayName,
 Email: DataCardValue2.Selected.Email,
 Id: "",
 JobTitle: "",
 Department: "",
 Picture: ""
 },
 'Review Date': DataCardValue59.SelectedDate
 }
 ).ID
 );
 
 // Nested loop to patch each child record for the current parent
 ForAll(
 colChildItems,
 Patch(
 JobSiteReviewHazards,
 Defaults(JobSiteReviewHazards),
 {
 MasterID: CurrentFormID,
 JSRAction: JSRAction,
 HazardIssue: HazardIssue,
 FurtherAction: FurtherAction,
 CRNumber: Value(CRNumber),
 Recognition: "",
 OverallComments: ""
 }
 )
 )

 

What is happening is the first patch is working just fine but nothing is patching with the second for the ChildItems.  I am stumped and I have been looking for days for this solution.

 

Any help would so be apprecaited.

Categories:
  • Michael E. Gernaey Profile Picture
    53,970 Super User 2026 Season 2 on at

    Hello,

     

    I know I am getting old so please excuse me if I truly am just missing it.. but it says its nested, but its not nested based on the code above. Did you mean to nest the bottom child forall in the top ForAll because the bottom is not nested in it

  • Dorinda Profile Picture
    1,512 on at

    The galleries are nested

    Dorinda_1-1694123596640.png

     

     

    the orange label is in parent gallery that the radio button is in the child

  • Michael E. Gernaey Profile Picture
    53,970 Super User 2026 Season 2 on at

    Have you verified the number of rows you get back from 

    ClearCollect(colChildItems, ChildGallery.AllItems);

    aking sure that ChildGallery.AllItems puts anything in colChildItems.

     

    And also what is in the colChildItems collection, after the ClearCollect?

     

    I would view the collection after running your code

    1. Click the ... next to the Settings entry

    2. Click Open

    3. Click Collections

    4. Scroll and find it

    5. Click it

    6. Scroll back up just to make sure stuff is in it

     

    If so then I would use the monitor to see what if any errors you are getting or if its even attempting anything. That will be the fastest way to see what is wrong.

  • Dorinda Profile Picture
    1,512 on at

    Thats the issue nothing is collecting or patching i cannot figure out how to get it to work this is the issue.

  • Michael E. Gernaey Profile Picture
    53,970 Super User 2026 Season 2 on at

    Is there any data in ThisItem.Data, which is driving the Child Gallery Items(I am guessing)?

  • Dorinda Profile Picture
    1,512 on at

    There are two lists in play here the JSR Categories which is just a list like this

    Dorinda_0-1694178662542.png

    which feeds this gallery 

    Dorinda_1-1694178688839.png



    When the button is clicked in the gallery this code is executed 

    Select(Parent);
    If(
     IsBlank(LookUp(colParentGalleryData, Title = ThisItem.Title)),
     Collect(
     colParentGalleryData, 
     { 
     Title: ThisItem.Title, 
     Examples: ThisItem.Examples,
     JSRAction: "Safe", // Placeholder
     HazardIssue: "None", // Placeholder
     FurtherAction: "None", // Placeholder
     CRNumber: "0", // Placeholder
     Recognition: "", // Placeholder
     OverallComments: "", // Placeholder
     Data: Table() // Initialize with an empty table
     }
     ), 
     RemoveIf(colParentGalleryData, Title = ThisItem.Title)
    );
    

    Which feeds the ParentGallery which is the Orange label and lighter orange label

    Dorinda_2-1694178827249.png

     

    the ChildGallery is used to select the type of hazard there are these controls in the ChildGallery 

    Dorinda_3-1694178880837.png

     

    when we patch they will be patched back to the JobSiteReviewHazards list all of the fields are Single Line of text fields 

    Dorinda_4-1694178964220.png

    That is what I am trying to do.  Hope that helps

  • Michael E. Gernaey Profile Picture
    53,970 Super User 2026 Season 2 on at

    Morning,

     

    Let me ask it differently since unfortunately no, what I asked before wasn't answered and I still do not get the problem (your issue I do, the problem no).

     

    You are patching all the parent items in a loop, but you are only attempting to patch the current child, why? Would you not need to patch all child matched to its parent, versus the current child? If not why are you looping through all the parent records, if, as you say there is a 1:1 relationship between the parent and child.

     

    You still haven't said if you verified that doing the clear collect gives you anything in the child collection or what AllItems gives you. Thats why I explained how to use the monitor. It is the #1 way to solve your problem period.

     

    It will directly show you what is in your collections and tell you if a patch fails or some other issue is happening, so you can see it, versus banging your head in the wall.

     

    I still do not see or understand the child collection / gallery because I do not see those fields on the screen in a place you highlighted and said all these fields are the child collection. So I do not see an example where you have them filled out yet they don't get patched.

     

    Sorry can't bang my head either

  • Dorinda Profile Picture
    1,512 on at

    @FLMike you are correct yes I need to capture both the parent and the child but since i couldnt get either to patch I put a label in the child to capture the hazard in the orange bar, obviously that isnt working either. 

     

    That is what I am trying to figure out. So if parentgallery hazard is Environmental in the child gallery I need to capture is it Safe, further action needed etc.  

     

    i cant get any of it to work.

  • Verified answer
    cwebb365 Profile Picture
    3,334 Most Valuable Professional on at

    Work with Dorinda on this. We took the same collection populating the first selection, and added the columns needed in the child galleries. Then had an onChange even for each selection populate the collection with the selected name of the first gallery. Then, added a ForAll for this collection to patch the SharePoint list with matching columns. 

     

    Also had to add a reset to columns set in a child / hidden selection when a new parent radio was selected. 

     

    Anyway, long story short, just needed some onChange events populating the a collection with the choices for each section as a row, and a loop patch to move it over. 

  • Dorinda Profile Picture
    1,512 on at

    My hero thank you for the help I truly appreciate it.!!

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Season of Sharing Community Challenge Winners!

Congratulations to our community stars!

Kudos to our 2025 Community Spotlight Honorees

Expanding mentorship, skilling, and AI innovation

Leaderboard > Power Apps

#1
11manish Profile Picture

11manish 432 Super User 2026 Season 2

#2
Mohsin Ali Profile Picture

Mohsin Ali 347

#3
WarrenBelz Profile Picture

WarrenBelz 254 Most Valuable Professional

Last 30 days Overall leaderboard