I wonder, if it is already implemented somewhere(I believe it is quite popular requirement) to have the ability to have effective dated process definitions, ie one entity called for example Process and few ProcessDefinitions attached to it, which have different effective periods.
Like first will be valid from 01-01-2000 to 31-12-2018 and second will be valid from 01-01-2019 to 31-12-2099?
UPD: I’ve found docs about process definitions versioning in both Flowable and Camunda:
https://flowable.org/docs/userguide/index.html#versioningOfProcessDefinitions
https://docs.camunda.org/manual/latest/user-guide/process-engine/process-versioning/
But I have a bit different situation, which IMHO is real world need - to find(and start) process with effective date provided.
So obviously effective period should be present - starte and end dates(nullable) - in ProcessDefinition(for those, who don’t use effective dates they can be set to null) and then there are 2 options:
- unique constraint in ProcessDefinition should include key and effective period
- new table called Process should be created and key should be moved from ProcessDefinition to that table