As it stands right now, the action system can be used to update data in a table, but that update is accomplished by the table being updated PULLING the data from triggering table.
A common scenario is for data saved in one table to trigger an update in another (i.e. “complete the order when the last part is entered & [here’s the data pull part] record the name of the person that entered that last part , marking them as the person that completed the order”).
The current way to set this up is to create a data change action in the orders table with a formula that looks for the last record in the Part’s table for the corresponding order (the one that was just saved and triggered the whole update sequence).
But if you’ve got large data sets, these lookups can be taxing on devices (especially if these devices are P.O.S computers in a hospital/library/school). Imagine if you’re submitting a record to a table with 28,476 records! That’s a lot of things to sift through to find the newest.
What we need is a way to take the data that is BEING saved and PUSH that into the table we want; that way the device doesn’t have to trigger the parent table to do a lookup through the child table, the device only has to lookup the parent record and update it with the data the app is “currently holding.”
The easiest way I can see to implement something like this is to use the REF ACTION system that already exists. With these:
- you build the action on the triggering table,
- select the table to update,
- select the action to run, and
- you pass it the record to update. (Saving the system from having to do a lookup.)
I propose a way that instead of selecting an action to run, you instead complete the data change specifications right there:
- select a column to update
- then enter the value you wish to replace the current value with. This space could look/function just like the current data change fields:
But now the value wouldn’t need to be a lookup formula, now it could be a formula from the context of the triggering table - even just a selected column (to take the value from that column and transpose it to the one being updated).
This would save a ton on processing power from the devices standpoint.
As always, thanks for considering! (^_^)