It would be very useful for many scenarios to be have the "old" (pre-change) values passed into Business Processes triggered by either data updates or deletions. This is possible to get when using Entity Event Listeners, so it seems like the data should be readily available to Business Processes without much overhead, and would unlock a lot of abilities to do via no-code tools that currently are only achievable using C# code or workarounds.
The way I see it working is that the triggered start would be passed in every field value of the old record, which the user could use in the process in the same way users can currently the Id of the changed/deleted record.
Use cases that I've come across:
- Updating permissions to revoke permissions granted based on the record's old value (currently would either have to be done via code or by revoking all permissions and re-granting the specific ones, which in complicated permissions setups can be very costly to perform and can potentially lead to issues)
- Sending updates to external systems about the removal of data
- Updating an automatically-set field that can also be modified by a user directly to see if the old value was automatically set or manually set by the user (by checking if the value matches the automatic construction using the old data)
- Checking time differences between events without having to build a completely separate logging table
I'm sure there are many more use cases that the community could provide too, as this is a problem I often face and have to find workarounds for or go through the process of creating an Entity Event Listener.
A few Creatio Community posts requesting similar functionality: