Your attachments did not make it to the forum. Thus, I am not able to write any queries, if this is what you expected.
Generally, though, this makes me worried:
Insert all the rows (TBL1_ID, TBL2_ID, amounts, recon ref, etc.) into a staging table from Power Apps.
How would you do this? If you are still going to add one row to the table, there is not much gained. Whether you actually need the staging table, I cannot say, the main problem is the one-by-one processing. There is a certain overhead for each call. How much depend on a lot of things, but if the cloud is involved, the overhead is very significant. But it can certainly be on-prem as well.
If you introduced the staging table only to get rid of the one-by-one updates, you probably don't need the staging tables. But there can be other sound reasons to use it that I an not aware of.
As for how to send many rows at a time, there are a number of options:
- Table-valued parameters.
- SqlBulkCopy class.
- Send data as XML that you shred in SQL Server.
- Dito, but use JSON instead.
Exactly, how would do this from PowerApps, I don't know, since I am not familiar with PowerApps.