cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
EpicTriffid
Resolver I
Resolver I

Changing a value for all items in a gallery

Hi all,

 

 

Capture

So I'm building an app where a user might enter in multiple staff for a unit. I have it so that, once submitted, they can edit the entry in-line. The OnChange properties of the gallery controls are set to patch on changing so that someone doesn't have to start all over again. 

 

However, I want it so that if someone change either the Unit Credits of # Students in one row, it changes for all of them. I can't seem to make that work. 

The other option is to set both of them from the entry box above, and if someone needs to change it, it cascades down into the submitted entries for that unit. However, I can't seem to make that work either. I've tried using ForAll to loop through the gallery (which is pre filtered based on what is in the Unit Name box)  when the #Student value is changed at the top, and for each entry in the gallery alter the #Students value. 

 

ForAll(
    'TA Unit Gallery_1'.AllItems,
    Patch(
        'Unit List',
        LookUp(
            'Unit List',
            ID = Value('TA Gal ID_1'.Text)
        ),
        {'Number of Students': 'TA - Value - # Students_1'}
    )
)

 

Any ideas?

2 REPLIES 2
EpicTriffid
Resolver I
Resolver I

Bumping this!

Hey @EpicTriffid 

 

Can you try to use the formula on the top Text Inputs for Students and Unit Credits as:
 
Students:
ForAll('TA Unit Gallery_1'.AllItems,
    Patch(
        'Unit List',
        LookUp(
            'Unit List',
            ID = Value('TA Gal ID_1'.Text)
        ),
        {'Number of Students': Value(TextInput1.Text)}  
    )
)
Here TextInput1 is the name of textinput for students.
 
Unit Credits:
ForAll('TA Unit Gallery_1'.AllItems,
    Patch(
        'Unit List',
        LookUp(
            'Unit List',
            ID = Value('TA Gal ID_1'.Text)
        ),
        {UnitCredits: TextInput1_1.Text}
    )
)
Here TextInput1 is the name of textinput for UnitCredits.

If you want to make the change if any item is updated in the gallery too, then use:
 
Students: 
Set(NewNumberofStudents,TextInput1_2.Text);
ForAll('TA Unit Gallery_1'.AllItems,
    Patch(
        'Unit List',
        LookUp(
            'Unit List',
            ID = Value('TA Gal ID_1'.Text)
        ),
        {'Number of Students': Value(NewNumberofStudents)} 
    )
)
 
Unit Credits:
Set(NewUnitCredits,TextInput1_3.Text);
ForAll('TA Unit Gallery_1'.AllItems,
    Patch(
        'Unit List',
        LookUp(
            'Unit List',
            ID = Value('TA Gal ID_1'.Text)
        ),
        {UnitCredits: NewUnitCredits}
    )
)
 
If this differs, please share a more explanatory description of the scenario that you are trying to achieve.
 
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!

Helpful resources

Announcements
UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

Community Connections 768x460.jpg

Community & How To Videos

Check out the new Power Platform Community Connections gallery!

M365 768x460.jpg

Microsoft 365 Collaboration Conference | December 7–9, 2021

Join us, in-person, December 7–9 in Las Vegas, for the largest gathering of the Microsoft community in the world.

Top Solution Authors
Top Kudoed Authors
Users online (1,948)