Skip to content

Access to old state on triggers #2131

@xtrm0

Description

@xtrm0

Describe the problem to be solved

It would be helpful to have a way to access row level old state in trigger formulas, similar to the way :old and :new work in SQL triggers https://www.ibm.com/docs/en/ias?topic=plsql-trigger-variables

Currently there is value, which reflect the old value on the target cell being updated, however, if the trigger is triggered by a change on some other column on the same row, there isn't any way to access the previous value of that cell without adding an extra hacky history column ( like history tracking example with extra column )

Adding row level :old, would make it much easier to add row level application logic to grist, without the need for external scripts / extra column hacks to manage history

See also discord thread

Related unanswered issues on the forum:
https://community.getgrist.com/t/row-history-timeline/1408
https://community.getgrist.com/t/webhooks-retrieve-the-old-value-of-a-clumns-when-un-updated-event-is-triggered/8112

Describe the solution you would like

Add a value row_old to grist function triggers - the current row before a trigger was triggered that contains the state of the current row before any updates happening on the row started.

For a given row, row_old should not change while trigger computations don't stabilize.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions