Announcements
This site is in read only until July 22 as we migrate to a new platform; refer to this community post for more details.

improving the performance of saving data in the appsheet database, reducing saving time

Hello!

I have an appsheet app which saves data in the appsheet database. Users fill in data using a table view of Table 1, they modify only some fields, they also use an Input () to fill some fields.  Finally, when users click on Save button, data are copied in another Table 2 (I used action "add a new row to another table using data from this row"), then I have an automation, an email is sent and another action is triggered (all values set by user are deleted and table 1 is empty and ready to be reused).

If users fill in many rows, saving data in Table 2 is quite long, for example, for 30 rows a few minutes (maybe 4 minutes), for 10 rows, 1 minute.

How could I improve saving time?

Thank you for your help!

Regards!

Ruxandra

 

 

 

0 6 291
6 REPLIES 6

What is the point of copying the record to the 2nd table? You can probably get rid of both that step and the deletion step by simply re-thinking your workflow, thus saving a bunch of sync time.

Hello!

Table 1 is a kind of template, every row has own data, laboratory sample 1,  laboratory samples 2, etc, different prices, then users select and fill in those samples which needs, and customer name, contract number, date, etc. In Table 2 I save the quote created based on selected laboratory samples.

We need this data to do dashboards and analysis.

Thank you!

Regards!

Ruxandra

@Ruxandra To get your app performing better, it would help to see some example of what is going on in your app.  It is hard to make suggestions of specific changes without it.

I can offer this, it sounds more like you have data being entered at two different times by different people and are managing that with different tables.  If so, this separation is forcing you to copy data so that it is all together, I assume to make it easier to create the dashboard and charts??

If that is what's happening here, you can just use a single table and then create Slices to manage the separation of the columns.  Slices can create subsets of data by Row Filters AND by Column selection.

For example, you could put all your data columns for the two tables together in a single table.  Then create Table 1 Slice which selects only the column you need for your Table 1 Form.  Table 2 Slice would then select the columns needed for quoting.

I may be off on my understanding of how your app is working.  But as @Marc_Dillon suggested, I am fairly confident there is a way to organize your data tables such that you do not need to copy data between tables.

Hello!

No, there is no 2 or more persons who share the same table. Table 1 have a package of rows (150 rows)  which should be used every time they need, first columns of the Table 1 don't change, but others columns are filled in dynamically.

I've made a sort of example in Google sheets:

Untitled.png

This package of rows should be used every time a customer send an order; one customer could need item no 1001, 1007 and 1010, another customer 1005 and 1009. Users used to work like this, in a google sheets, and they asked to have something similarly. 

So that's why I created the app as I described. Some fields are linked to others tables from the cloud.

Thank you!

Regards!

Ruxandra

Personally, I would do everything possible to prevent users from entering data directly into a sheet.  It's a data source and needs to be locked down completely to keep data secure.  it also seem to be forcing you into a bad app design.

The only thing I can offer to help speed up the row copies is either:

1)  Use the AppSheet API to perform the copies.  The API can perform these more in a bulk fashion and are a little faster.

2)  Create an App Script.  In a script, rows are not subjected to all of the processing overhead that they are within the AppSheet services.

Hello!

Could you give me more details how to use Appsheet api to write data in the appsheet db?

Thank you!

Regards!

Ruxandra

Top Labels in this Space