As a User, I want to Ad-hoc link forms together with relationships that form larger project workflows. The user should be able to state if they are conditional links (requiring the new forms to be completed before primary can proceed) or non-conditional (where both can proceed independently but still be referenced to each other)
To allow the creation of a secondary/linked form from a primary/parent form to allow a user to introduce a new form with go/no go gateways processes or references to the primary form for reporting. This feature should be included in both informal and formal correspondence.
Can only link other forms published to the same project to which the user has access.
Linking creates a unique link correspondence ID.
Used to stop links from becoming circular, links must check non-conditional existing forms are not already added reference to the parent workflow id.
Workflow id is inherited from the linked form.
2 types of linking are required (This is determined when the link is requested by the user)
Conditional link: The container on the parent form will need to be frozen until the children's form is complete. Freezing prevents the form from moving to the next stage or being completed. This type of link can only be used with a new form instance created fresh. (Please see example use cases to further details of how this would operate)
Non-Conditional link: The container on the parent form will not be frozen until the children's forms are complete. A parent can be completed independently of the non-conditional linked form. This can be new form instances created or existing forms on the project.
Form/Correspondence ID: is a unique reference identifier and is inherited from the Parent form, if it is not present then one is created.
Conditional links: When a dependency is created the child form must be completed before the parent can progress.
Non-conditional links: Both parent and children can operate independently from each other and are only linked via a reference (workflow id)
Room sign-off example with conditional linking of two forms.