cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Helper III
Helper III

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
Helper III
Helper III

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
News & Announcements

Community Blog

Stay up tp date on the latest blogs and activities in the community News & Announcements.

Power Apps Community Call

Power Apps Community Call- January

Check out the Power Apps Community Call for January 2021

PP Bootcamp Carousel

Global Power Platform Bootcamp

Dive into the Power Platform stack with hands-on sessions and labs, virtually delivered to you by experts and community leaders.

secondImage

Power Platform Community Conference On Demand

Watch Nick Doelman's session from the 2020 Power Platform Community Conference on demand!

Top Solution Authors
Top Kudoed Authors
Users online (3,775)