Showing results for 
Search instead for 
Did you mean: 
Community Champion
Community Champion

Useful features of powerapps (15) - Multiple (Batch) Records Adding / Editing



With new formula, Patch (in Batch or Multiple Records) and ForAll, Apps' efficiency can be enhanced tremendously, esp. for those really need these.


After couple of advices and information/guide from PG Staff (rgruian), and Mr. Dang, (Thanks to both of them), I wish to share as compliment to Tutorial on Patch


Original Text: Modify or create a set of records in a data source


Patch can also be used to create or modify multiple records with a single call.

Instead of passing a single base record, a table of base records can be provided in the second argument. Change records are provided in a table as well, corresponding one-for-one with the base records. The number of records in each change table must be the same as the number of records in the base table.

When using Patch in this manner, the return value is also a table with each record corresponding one-for-one with the base and change records.


Patch( DataSource, BaseRecordsTable, ChageRecordTable1, [, ChangeRecordTable2, … ] )


NB: ChangeRecordTable1, Table2,.... can be achieved thru the use of ForAll (however, if fix number of fields / rows are known, gallery may not be necessary; I have not included here as it is pretty simple to understand)


Patch has been the key formula since Jan 2016 and further improved in Apr 2016.

What is really unclear and found ambigous for me is: BaseRecordsTable & ChangeRecordTable

- BaseRecordsTable: Can be obtained thru creating a Context Variable (using Collect, or even other method such as UpdateContext, or Navigate( .., .., {AA: ..}).

- ChangeRecordTable1, 2,...: Can be obtained thru ForAll(Gallery.AllItems, {FieldTitle1: TextInput1.Text, FieldTitle2.Text,..}


By sharing here, and while awaiting Tutorial being improved on Patch (Multiple Records) [ForAll is pretty clear and explicit], I hope for those who are in needs and as slow in learning as me, can use this as a reference.


Hopefully my examples can further be improved. Thanks in advance.


Example shown here are a combination of:

- New Multiple Records saving, and

- Multiple Records editing and saving

using the SAME editing gallery.

[I use Excel in DropBox as datasource and the speed of saving, editing, par with CDM / CDS]


My apologize: Correction of Errors

1. Collect(TableBookCollection,.......) shall be Collect(SourceBook......)

[the formula is correct, just the description was not properly edited]

2. Gallery1.Items.SourceBook shall be changed to Gallery1_3.Items.SourceBook

[Typo Error]


Editing Existing RecordsEditing Existing RecordsAdding New RecordsAdding New Records



Have a nice day.

New Member

Patch function is not taking second argument as "table". can you please help?

Helpful resources

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.

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.


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
Top Kudoed Authors
Users online (2,619)