ActiveForm: How to delay updates after leaving cell

Dear Canvas specialists,

is there any approach or workaround to prevent updating of ActiveForm once a users changed a DBR cell and leaves the input field? We have a bigger active form that takes a while to recalculate, so for users it’s quite annoying to wait each time 2-5 sec for the form to rebuild after changing just one entry, before the user can go to the next cell.

Users would prefer to have a button for turning off rebuild/recalculation of ActiveForm after changing the value, until they are done with their changes. After being done, they would recalculate the form again. In fact, the most annoying behaviour here is that the ActiveForm rebuilds completely after leaving a cell, it is not just recalculating the DBRs, but disappears for a moment and then comes back with new data, which destroys a smooth navigation from cell to cell in case of any data change.

I have seen nothing obvious on how to achieve this, but any workaround very welcome. A typical “it doesn’t work like Excel” situation :frowning:

It should work like this: updated values could be sent to the cube after leaving the cell, but the form should not refresh. Or somehow all updates are sent together when enabling recalculation again. Do you think I could apply a unique refresh-group attribute to each cell to achieve this? Of course, via button a user would then need to trigger $tm1Ui.dataRefresh().

Thanks in advance,
Andreas

Hi @andreas.franke,

The Active Form directive may not be the optimal directive for you if you are going to use it as a form entry.

There are a number of alternatives which can give more flexibility. For example, within the Canvas Samples application, you can try to checkout:

Cube Viewer, if data entry is on a single cube,

http://localhost:8080/samples/#/sample/component/cube-viewer

Simple data entry in a table, with indentation,

http://localhost:8080/samples/#/sample/sample-data-entry

If you want the expand and collapse capability,

http://localhost:8080/samples/#/sample/sample-grid

Simple table where you can put DBRs and change context / elements from a dropdown,

http://localhost:8080/samples/#/sample/sample-table

Or if its a record / line-by-line like entries, perhaps you can provide for them an Excel download link where they can update the records, and upload it back to Canvas for saving,

http://localhost:8080/samples/#/sample/sample-sheetjs

And other examples in there that can be better suited to what you wanted to deliver.

Hope this helps give an idea. Let us know how it goes!


Cheers,
Paul