Connections are used to join together Specification Macro Nodes. Connections are made between each of the Nodes Inputs and Outputs to create a Specification Macro flow. For more information about Nodes see: Specification Macro Nodes
Connection Points are what is used to make Connections between different Nodes. The two different types of Connection Points are Navigation and Data Points (green for Navigation and black for Data). For more information on Specification Macro Connection Points see here.
Connections can be easily thought about with some simple rules to how they work. These are:
All Inputs except Data Inputs can have multiple Connections. This is because Data Inputs can only take one Output.
You can only connect Node Navigation and Data points to same type of point (green points to green points and black points to black points).
DriveWorks will execute all valid Tasks from the first available route before backtracking and checking for all other valid Tasks.
For Example:
When three Tasks are all connected to the Start Node and all are then connected to a fourth Task, DriveWorks will execute the first and fourth Tasks first (the most direct route) before executing the second to fourth and third to fourth Tasks.
To create a Connection:
To delete a Connection:
There are a two different Connection types possible. These are Navigation and Data but there are multiple ways of using these connections. Here are some examples:
Connection Scenarios | Image | Description |
---|---|---|
If the order of execution matters | This example shows how to use a Navigation Connection so that a Node is executed after another one. This is how you can force the order in which Nodes are executed. | |
If the order of execution doesn't matter | This example shows how to use Navigation Connections so that two Nodes are executed after another one. This is if you want these two Nodes to be executed but you don't need to force their order of execution. | |
Sharing Data between Nodes | This example shows a Data Connection between the Released Documents Output of the Release Document(s) Task and the Constant Value Input of the Drive Constant Value Task. This means that the constant will be driven with a pipe-bar list of all the released documents. | |
Reacting to the status of a Task | This example shows how you can use Tasks Status Output Connection Points to run different Nodes depending on its Status. For more information see Specification Macros Task Node. | |
Triggering Tasks based on Conditions | This example shows how you can use Condition Nodes to trigger other Tasks and Conditions. For example, Cancel Specification would be executed if one condition fails, Released Documents if the same condition passes and Toggle if two conditions pass. |
DriveWorks will execute and fulfil a Macro Workflow in a specific order, based on the the type of Nodes used within a Macro workflow.
A Macro will always begin from the start Node, this is the blue Node on the left hand side of the Specification Macro Flow.
Each Node is connected by dragging the output connection point of one Node, to the input connection point of another Node.
The order in which Nodes are linked to one another is the most basic form of controlling when a Macro Task should be executed.
Example | Description |
---|---|
Macros A, B and C will all be executed one after another. | |
The order in which the macros are executed is not crucial. All Macros will be executed in tandem with one another. | |
Macros A and B will be executed in tandem, but Macro C will only be executed after B has finished. |
A condition Node has 2 possible outputs, a condition output and a Navigation Output.
These Outputs will be fulfilled in the following order.
A Task Node has 3 possible outputs, Data outputs, Status Outputs and Navigation Outputs.
These Outputs will be fulfilled in the following order.
Using this information it's possible to have a great deal of control as to when specific Macros will be executed.