cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
hpkeong
Community Champion
Community Champion

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

Hi

 

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,...is 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.

hpkeong
1 REPLY 1
Urvi
New Member

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

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,240)